From 53a1f9ead2c697ae4542cfdfef70e73b7b74106f Mon Sep 17 00:00:00 2001 From: JohnBraham Date: Sat, 3 Oct 2026 16:31:32 +0100 Subject: [PATCH 1/3] Fix vanilla terrain compatibility for Mineralogy 6.1.4 on Forge 1.20.6 --- .github/workflows/ci.yml | 6 +- CHANGELOG.txt | 10 + README.md | 8 +- build.gradle | 9 +- docs/VERSIONS.md | 37 ++- gradle.properties | 2 +- gradle/terrain-compatibility-probe.gradle | 21 ++ gradle/verify-terrain-compatibility.gradle | 69 +++++ scripts/generate-terrain-compatibility.ps1 | 38 +++ .../blocks/dripstone_replaceable_blocks.json | 6 + .../tags/blocks/moss_replaceable.json | 6 + .../tags/blocks/sculk_replaceable.json | 6 + .../mineralogy/tags/blocks/terrain_rocks.json | 42 +++ .../mineralogy/tags/items/terrain_rocks.json | 42 +++ .../resources/META-INF/mods.toml | 2 +- .../resources/META-INF/mods.toml | 2 +- .../TerrainCompatibilityProbe.java | 248 ++++++++++++++++++ .../resources/META-INF/mods.toml | 14 + .../blocks/dripstone_replaceable_blocks.json | 1 + .../tags/blocks/moss_replaceable.json | 1 + .../tags/blocks/sculk_replaceable.json | 1 + .../worldgen/world_preset/dripstone.json | 1 + .../worldgen/world_preset/lush.json | 1 + .../resources/pack.mcmeta | 6 + .../mc/mineralogy/ResourceContractTest.java | 2 +- .../TerrainCompatibilityContractTest.java | 107 ++++++++ .../mc/mineralogy/WorkflowContractTest.java | 2 +- 27 files changed, 670 insertions(+), 20 deletions(-) create mode 100644 gradle/terrain-compatibility-probe.gradle create mode 100644 gradle/verify-terrain-compatibility.gradle create mode 100644 scripts/generate-terrain-compatibility.ps1 create mode 100644 src/main/resources/data/minecraft/tags/blocks/dripstone_replaceable_blocks.json create mode 100644 src/main/resources/data/minecraft/tags/blocks/moss_replaceable.json create mode 100644 src/main/resources/data/minecraft/tags/blocks/sculk_replaceable.json create mode 100644 src/main/resources/data/mineralogy/tags/blocks/terrain_rocks.json create mode 100644 src/main/resources/data/mineralogy/tags/items/terrain_rocks.json create mode 100644 src/terrainCompatibilityTest/java/zone/moddev/mc/mineralogy/compatprobe/TerrainCompatibilityProbe.java create mode 100644 src/terrainCompatibilityTest/resources/META-INF/mods.toml create mode 100644 src/terrainCompatibilityTest/resources/data/minecraft/tags/blocks/dripstone_replaceable_blocks.json create mode 100644 src/terrainCompatibilityTest/resources/data/minecraft/tags/blocks/moss_replaceable.json create mode 100644 src/terrainCompatibilityTest/resources/data/minecraft/tags/blocks/sculk_replaceable.json create mode 100644 src/terrainCompatibilityTest/resources/data/mineralogycompatprobe/worldgen/world_preset/dripstone.json create mode 100644 src/terrainCompatibilityTest/resources/data/mineralogycompatprobe/worldgen/world_preset/lush.json create mode 100644 src/terrainCompatibilityTest/resources/pack.mcmeta create mode 100644 src/test/java/zone/moddev/mc/mineralogy/TerrainCompatibilityContractTest.java diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 03afd2897..25d298290 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -148,9 +148,9 @@ jobs: if-no-files-found: error retention-days: 30 path: | - build/libs/Mineralogy-6.1.2.120061.jar - build/libs/Mineralogy-6.1.2.120061-sources.jar - build/libs/Mineralogy-6.1.2.120061-javadoc.jar + build/libs/Mineralogy-6.1.4.120061.jar + build/libs/Mineralogy-6.1.4.120061-sources.jar + build/libs/Mineralogy-6.1.4.120061-javadoc.jar build/release/SHA256SUMS CHANGELOG.txt diff --git a/CHANGELOG.txt b/CHANGELOG.txt index ba5ce2df7..fdc37c2d8 100644 --- a/CHANGELOG.txt +++ b/CHANGELOG.txt @@ -1,3 +1,13 @@ +Mineralogy 6.1.4.120061 for Minecraft 1.20.6 + +- Restored vanilla sculk catalyst conversion and dripstone/moss replacement on + 37 natural terrain identities, including native aliases and special rocks. +- Sculk works in existing worlds after updating; natural cave decoration + improves in newly generated chunks. No sulfur-cube tags on this target. +- Added deterministic tag, real-loader/reload, vanilla consumer, cave sample + and packaged-runtime validation. No recipes, IDs, configurations, provider, + OreSpawn engine, translations, or existing textures changed. + Mineralogy 6.1.2.120061 for Minecraft 1.20.6 - Updated all pickaxe and harvest-tier tags to the supported optional diff --git a/README.md b/README.md index 1556206d0..e75eaa6a5 100644 --- a/README.md +++ b/README.md @@ -10,10 +10,16 @@ mineral ores and dusts, rock furnaces, drywall, rock-salt lighting, fertilizer, and crude oil. OreSpawn 4 is the sole terrain, strata, ore, and deposit engine; Mineralogy no longer installs a parallel world generator. -This branch builds Mineralogy `6.1.2.120061` for Forge `50.2.0` and is built +This branch builds Mineralogy `6.1.4.120061` for Forge `50.2.0` and is built and tested against OreSpawn `4.0.16.120061`. Its declared compatibility range is OreSpawn `[4.0.6,5.0.0)`. Install both mods on clients and servers. +Version 6.1.4 restores vanilla sculk conversion and dripstone/moss replacement +on natural Mineralogy terrain. Sculk works in existing worlds after updating; +improved natural cave decoration appears in newly generated chunks. These +additive tags are independent of the cobblestone-equivalence option and exclude +crafted or shaped construction blocks. Sulfur cubes do not exist on this target. + ## Configuration and help Mineralogy's content and recipe switches remain in diff --git a/build.gradle b/build.gradle index 0818c46e3..debcabbad 100644 --- a/build.gradle +++ b/build.gradle @@ -579,7 +579,7 @@ tasks.register('verifyReleaseConfiguration') { description = 'Verifies the exact Mineralogy 1.20.6 release identity.' dependsOn tasks.named('verifyMavenizerCompatibilityFixture') doLast { - if (project.mod_version != '6.1.2.120061' + if (project.mod_version != '6.1.4.120061' || project.mod_group != expectedMavenGroup || project.minecraft_version != '1.20.6' || project.forge_version != '50.2.0' @@ -594,7 +594,7 @@ tasks.register('verifyReleaseDependencies') { group = 'verification' description = 'Resolves and verifies the exact released OreSpawn dependency.' doLast { - if (project.mod_version != '6.1.2.120061' + if (project.mod_version != '6.1.4.120061' || project.minecraft_version != project.mc_version || project.mc_version != '1.20.6' || project.loader_name != 'forge' @@ -1282,7 +1282,7 @@ tasks.register('verifyEclipseProductionClasspath') { throw new GradleException('Eclipse output contains stale or unexpanded mods.toml metadata') } String eclipseMetadata = eclipseModsToml.getText('UTF-8') - if (eclipseMetadata.contains('${') || !eclipseMetadata.contains('version="6.1.2.120061"')) { + if (eclipseMetadata.contains('${') || !eclipseMetadata.contains('version="6.1.4.120061"')) { throw new GradleException('Eclipse output contains unresolved or invalid Mineralogy version metadata') } } @@ -1308,3 +1308,6 @@ tasks.named('check') { dependsOn tasks.named('verifyOilCompatibilityFixtureIsolation') dependsOn tasks.named('compileRecipeIntegrationFixture') } + +apply from: 'gradle/verify-terrain-compatibility.gradle' +apply from: 'gradle/terrain-compatibility-probe.gradle' diff --git a/docs/VERSIONS.md b/docs/VERSIONS.md index d6772612e..1614e4d10 100644 --- a/docs/VERSIONS.md +++ b/docs/VERSIONS.md @@ -9,14 +9,14 @@ exact Minecraft/loader target are both visible in one number. Major.Minor.Bug.Target ``` -The first three components are the **functional version**. Mineralogy `6.1.2` -means major generation 6, minor release 1, and bug revision 2. +The first three components are the **functional version**. Mineralogy `6.1.4` +means major generation 6, minor release 1, and bug revision 4. The fourth component identifies the target build. The complete version for this Minecraft 1.20.6 Forge release is therefore: ```text -6.1.2.120061 +6.1.4.120061 ``` This expanded numeric form is compatible with Maven version ordering, but it @@ -25,7 +25,7 @@ components. The release tag is exactly the complete four-component version, with no redundant Minecraft-version prefix. For this branch the tag is therefore -`6.1.2.120061`, not `1.20.6-6.1.2.120061`. The Target already makes tags unique +`6.1.4.120061`, not `1.20.6-6.1.4.120061`. The Target already makes tags unique across Minecraft versions and loaders. ## Reading the target component @@ -55,7 +55,7 @@ minor digits, and all remaining digits for the Minecraft major version. | 1.18.2 | Forge | `118021` | `6.1.2.118021` | | 1.19.4 | Forge | `119041` | `6.1.2.119041` | | 1.20.1 | Forge | `120011` | `6.1.2.120011` | -| 1.20.6 | Forge | `120061` | `6.1.2.120061` | +| 1.20.6 | Forge | `120061` | `6.1.4.120061` | | 1.21.11 | Forge | `121111` | `6.1.2.121111` | | 26.2 | Forge | `2602001` | `6.0.0.2602001` | | 26.2 | NeoForge | `2602002` | `6.0.0.2602002` | @@ -68,6 +68,27 @@ Historical Mineralogy releases may also have four numeric components that used the last number as an ordinary build sequence. The target policy applies to new releases and does not reinterpret an old file's version. + +## Vanilla stone compatibility campaign + +The following local candidates share the 6.1.4 additive terrain compatibility +fix. This is a candidate matrix, not a claim that every release is published. +NeoForge 26.3 retains its existing 6.1.3 compatibility correction. + +| Minecraft | Forge candidate | NeoForge candidate | +| --- | --- | --- | +| 1.19.4 | 6.1.4.119041 | Not in scope | +| 1.20.1 | 6.1.4.120011 | Not in scope | +| 1.20.6 | 6.1.4.120061 | 6.1.4.120062 | +| 1.21.1 | 6.1.4.121011 | 6.1.4.121012 | +| 1.21.11 | 6.1.4.121111 | 6.1.4.121112 | +| 26.1.2 | 6.1.4.2601021 | 6.1.4.2601022 | +| 26.2 | 6.1.4.2602001 | 6.1.4.2602002 | +| 26.3 | 6.1.4.2603001 | 6.1.4.2603002 | + +Forge 1.18.2's dripstone/moss correction is outstanding and outside this +campaign. Native-texture synchronization remains a separate campaign. + ## Major version The **Major** number changes for a fundamental or breaking new generation of @@ -92,7 +113,7 @@ When Major changes, Minor and Bug reset to zero. When Minor changes, Bug resets to zero. The target for the actual build is then appended: ```text -6.1.2.120061 -> 6.2.0.120061 +6.1.4.120061 -> 6.2.0.120061 6.2.4.120061 -> 7.0.0.120061 ``` @@ -121,7 +142,7 @@ Minecraft 1.17.1 / Forge / Mineralogy 6.1.0.117011 Minecraft 1.18.2 / Forge / Mineralogy 6.1.2.118021 Minecraft 1.19.4 / Forge / Mineralogy 6.1.2.119041 Minecraft 1.20.1 / Forge / Mineralogy 6.1.2.120011 -Minecraft 1.20.6 / Forge / Mineralogy 6.1.2.120061 +Minecraft 1.20.6 / Forge / Mineralogy 6.1.4.120061 ``` Minecraft and loader APIs may require different internal code without changing @@ -167,7 +188,7 @@ feature generation, not the exact jar. The Gradle build reads the complete version from `mod_version`, verifies that it has four numeric components, and checks that its Target matches the declared Minecraft version and Forge loader. CI build numbers are not appended. For this -branch, published metadata and artifacts therefore use `6.1.2.120061`. +branch, published metadata and artifacts therefore use `6.1.4.120061`. Every release note should state: diff --git a/gradle.properties b/gradle.properties index 521779edc..97a856094 100644 --- a/gradle.properties +++ b/gradle.properties @@ -7,7 +7,7 @@ org.gradle.caching=true org.gradle.parallel=false net.minecraftforge.gradle.merge-source-sets=false -mod_version=6.1.2.120061 +mod_version=6.1.4.120061 mod_group=zone.moddev.mc.mineralogy # Release metadata consumed by the generic dispatcher. diff --git a/gradle/terrain-compatibility-probe.gradle b/gradle/terrain-compatibility-probe.gradle new file mode 100644 index 000000000..c6dc72659 --- /dev/null +++ b/gradle/terrain-compatibility-probe.gradle @@ -0,0 +1,21 @@ +def probeClasses = layout.buildDirectory.dir('terrain-compatibility-fixture/classes') +tasks.register('compileTerrainCompatibilityProbe', JavaCompile) { + dependsOn tasks.named('classes') + source fileTree('src/terrainCompatibilityTest/java') + classpath = files(sourceSets.main.output, sourceSets.main.compileClasspath) + destinationDirectory = probeClasses + javaCompiler = javaToolchains.compilerFor { + languageVersion = JavaLanguageVersion.of(Integer.parseInt(project.java_version)) + vendor = JvmVendorSpec.ADOPTIUM + } + options.encoding = 'UTF-8' + options.release = Integer.parseInt(project.java_version) +} +tasks.register('terrainCompatibilityProbeJar', Jar) { + dependsOn tasks.named('compileTerrainCompatibilityProbe') + archiveFileName = 'terraincompatibilityprobe.jar' + destinationDirectory = layout.buildDirectory.dir('terrain-compatibility-fixture') + from probeClasses + from 'src/terrainCompatibilityTest/resources' +} +tasks.named('check') { dependsOn tasks.named('compileTerrainCompatibilityProbe') } diff --git a/gradle/verify-terrain-compatibility.gradle b/gradle/verify-terrain-compatibility.gradle new file mode 100644 index 000000000..fff331aa1 --- /dev/null +++ b/gradle/verify-terrain-compatibility.gradle @@ -0,0 +1,69 @@ +import groovy.json.JsonSlurper +import java.util.zip.ZipFile + +// Runs on assembled resources as well as source tests: no probe enters a release jar. +tasks.register('verifyTerrainCompatibilityArtifacts') { + group = 'verification' + dependsOn tasks.named('assemble') + doLast { + def families = ('andesite basalt diorite granite rhyolite pegmatite diabase gabbro peridotite ' + + 'basaltic_glass scoria tuff shale conglomerate dolomite limestone siltstone marble slate schist gneiss ' + + 'phyllite amphibolite hornfels quartzite novaculite rock_salt').split(' ') + def raw = (families.collect { "mineralogy:$it".toString() } + + ['chalk', 'chert', 'gypsum', 'pumice'].collect { "mineralogy:$it".toString() }).toSet() + def terrain = raw + ['andesite', 'basalt', 'diorite', 'granite', 'sandstone', 'tuff'].collect { "minecraft:$it".toString() } + boolean singular = !(minecraft_version in ['1.19.4', '1.20.1', '1.20.6']) + boolean cubes = minecraft_version in ['26.2', '26.3'] + def block = singular ? 'block' : 'blocks' + def item = singular ? 'item' : 'items' + def inspect = { ZipFile zip, String path, Set expected, boolean optional -> + def entry = zip.getEntry("data/$path") + if (entry == null) throw new GradleException("Missing compatibility tag: $path") + def tag = new JsonSlurper().parseText(zip.getInputStream(entry).getText('UTF-8')) + if (tag.keySet() != ['replace', 'values'].toSet() || tag.replace != false || !(tag.values instanceof List)) + throw new GradleException("Non-additive/malformed compatibility tag: $path") + def ids = tag.values.collect { value -> + if (value instanceof Map) { + if (!optional || value.keySet() != ['id', 'required'].toSet() || value.required != false || raw.contains(value.id)) + throw new GradleException("Invalid optional compatibility entry: $path $value") + return value.id + } + if (!(value instanceof String) || (optional && !raw.contains(value))) + throw new GradleException("Invalid required compatibility entry: $path $value") + value + } + if (ids.size() != ids.toSet().size() || ids.toSet() != expected) + throw new GradleException("Incorrect compatibility membership: $path") + if (optional && tag.values.count { it instanceof Map } != 81) + throw new GradleException('Sulfur cube construction forms must all be optional') + } + ['jar', 'sourcesJar'].each { taskName -> + new ZipFile(tasks.named(taskName).get().archiveFile.get().asFile).withCloseable { zip -> + inspect(zip, "mineralogy/tags/$block/terrain_rocks.json", terrain, false) + inspect(zip, "mineralogy/tags/$item/terrain_rocks.json", terrain, false) + ['sculk_replaceable', 'dripstone_replaceable_blocks', 'moss_replaceable'].each { name -> + inspect(zip, "minecraft/tags/$block/${name}.json", ['#mineralogy:terrain_rocks'].toSet(), false) + } + if (cubes) { + def full = raw + ['_smooth', '_brick', '_smooth_brick'].collectMany { suffix -> families.collect { "mineralogy:$it$suffix".toString() } } + full.each { id -> + def name = id.substring('mineralogy:'.length()) + if (zip.getEntry("assets/mineralogy/blockstates/${name}.json") == null || zip.getEntry("assets/mineralogy/models/item/${name}.json") == null) + throw new GradleException("Nonexistent sulfur cube block/item: $id") + } + inspect(zip, "mineralogy/tags/$item/sulfur_cube_stones.json", full, true) + inspect(zip, "minecraft/tags/$item/sulfur_cube_archetype/slow_bouncy.json", ['#mineralogy:sulfur_cube_stones'].toSet(), false) + } + def forbiddenKind = singular ? 'blocks|items' : 'block|item' + zip.entries().each { entry -> + if (entry.name ==~ "data/.+/tags/($forbiddenKind)/.*(terrain_rocks|sulfur_cube).*" || + (!cubes && entry.name.contains('sulfur_cube')) || + entry.name.toLowerCase().contains('terraincompatibilityprobe') || entry.name.contains('compatprobe/') || + entry.name.contains('terrainCompatibilityTest') || entry.name.contains('terrain-compatibility-fixture')) + throw new GradleException("Forbidden compatibility resource/probe: ${entry.name}") + } + } + } + } +} +tasks.named('verifyReleaseArtifacts') { dependsOn tasks.named('verifyTerrainCompatibilityArtifacts') } diff --git a/scripts/generate-terrain-compatibility.ps1 b/scripts/generate-terrain-compatibility.ps1 new file mode 100644 index 000000000..65250206d --- /dev/null +++ b/scripts/generate-terrain-compatibility.ps1 @@ -0,0 +1,38 @@ +# Isolated resource generator: never regenerate recipes or existing family tags. +[CmdletBinding()] +param([string]$ProjectRoot = (Split-Path $PSScriptRoot -Parent)) +$ErrorActionPreference = 'Stop' +$projectPath = (Resolve-Path -LiteralPath $ProjectRoot).Path +$properties = Get-Content -LiteralPath (Join-Path $projectPath 'gradle.properties') +$mc = ($properties | Where-Object { $_ -match '^minecraft_version=' }) -replace '^minecraft_version=', '' +$singular = $mc -notin @('1.19.4', '1.20.1', '1.20.6') +$cubes = $mc -in @('26.2', '26.3') +$blockDir = if ($singular) { 'block' } else { 'blocks' } +$itemDir = if ($singular) { 'item' } else { 'items' } +$provider = Get-Content -Raw -LiteralPath (Join-Path $projectPath 'src/main/resources/data/mineralogy/orespawn/provider.json') | ConvertFrom-Json +$outputs = @($provider.rocks.PSObject.Properties | ForEach-Object { $_.Value.block } | Sort-Object -Unique) +$aliases = @($provider.profile_defaults.worldgen_aliases.PSObject.Properties | ForEach-Object { $_.Name }) +$terrain = @(@($outputs) + @($aliases) | Sort-Object -Unique) +if ($outputs.Count -ne 32 -or $aliases.Count -ne 5 -or $terrain.Count -ne 37) { throw 'Unexpected provider terrain contract' } +$families = @('andesite','basalt','diorite','granite','rhyolite','pegmatite','diabase','gabbro','peridotite','basaltic_glass','scoria','tuff','shale','conglomerate','dolomite','limestone','siltstone','marble','slate','schist','gneiss','phyllite','amphibolite','hornfels','quartzite','novaculite','rock_salt') +$utf8 = [System.Text.UTF8Encoding]::new($false) +function Write-Tag([string]$RelativePath, [object[]]$Values) { + $destination = Join-Path $projectPath ('src/main/resources/data/' + $RelativePath) + [System.IO.Directory]::CreateDirectory((Split-Path $destination -Parent)) | Out-Null + $json = [ordered]@{ replace = $false; values = @($Values) } | ConvertTo-Json -Depth 8 + [System.IO.File]::WriteAllText($destination, ($json -replace "`r`n", "`n") + "`n", $utf8) +} +Write-Tag "mineralogy/tags/$blockDir/terrain_rocks.json" $terrain +Write-Tag "mineralogy/tags/$itemDir/terrain_rocks.json" $terrain +foreach ($tag in @('sculk_replaceable','dripstone_replaceable_blocks','moss_replaceable')) { + Write-Tag "minecraft/tags/$blockDir/$tag.json" @('#mineralogy:terrain_rocks') +} +if ($cubes) { + $stones = @($families | ForEach-Object { "mineralogy:$_" }) + @('mineralogy:chalk','mineralogy:chert','mineralogy:gypsum','mineralogy:pumice') + foreach ($suffix in @('_smooth','_brick','_smooth_brick')) { + foreach ($family in $families) { $stones += [ordered]@{ id = "mineralogy:$family$suffix"; required = $false } } + } + Write-Tag "mineralogy/tags/$itemDir/sulfur_cube_stones.json" $stones + Write-Tag "minecraft/tags/$itemDir/sulfur_cube_archetype/slow_bouncy.json" @('#mineralogy:sulfur_cube_stones') +} +Write-Output "Generated terrain compatibility for Minecraft $mc ($($terrain.Count) terrain identities; sulfur cubes: $cubes)" diff --git a/src/main/resources/data/minecraft/tags/blocks/dripstone_replaceable_blocks.json b/src/main/resources/data/minecraft/tags/blocks/dripstone_replaceable_blocks.json new file mode 100644 index 000000000..10c160fb5 --- /dev/null +++ b/src/main/resources/data/minecraft/tags/blocks/dripstone_replaceable_blocks.json @@ -0,0 +1,6 @@ +{ + "replace": false, + "values": [ + "#mineralogy:terrain_rocks" + ] +} diff --git a/src/main/resources/data/minecraft/tags/blocks/moss_replaceable.json b/src/main/resources/data/minecraft/tags/blocks/moss_replaceable.json new file mode 100644 index 000000000..10c160fb5 --- /dev/null +++ b/src/main/resources/data/minecraft/tags/blocks/moss_replaceable.json @@ -0,0 +1,6 @@ +{ + "replace": false, + "values": [ + "#mineralogy:terrain_rocks" + ] +} diff --git a/src/main/resources/data/minecraft/tags/blocks/sculk_replaceable.json b/src/main/resources/data/minecraft/tags/blocks/sculk_replaceable.json new file mode 100644 index 000000000..10c160fb5 --- /dev/null +++ b/src/main/resources/data/minecraft/tags/blocks/sculk_replaceable.json @@ -0,0 +1,6 @@ +{ + "replace": false, + "values": [ + "#mineralogy:terrain_rocks" + ] +} diff --git a/src/main/resources/data/mineralogy/tags/blocks/terrain_rocks.json b/src/main/resources/data/mineralogy/tags/blocks/terrain_rocks.json new file mode 100644 index 000000000..d745d6595 --- /dev/null +++ b/src/main/resources/data/mineralogy/tags/blocks/terrain_rocks.json @@ -0,0 +1,42 @@ +{ + "replace": false, + "values": [ + "minecraft:andesite", + "minecraft:basalt", + "minecraft:diorite", + "minecraft:granite", + "minecraft:sandstone", + "minecraft:tuff", + "mineralogy:amphibolite", + "mineralogy:andesite", + "mineralogy:basalt", + "mineralogy:basaltic_glass", + "mineralogy:chalk", + "mineralogy:chert", + "mineralogy:conglomerate", + "mineralogy:diabase", + "mineralogy:diorite", + "mineralogy:dolomite", + "mineralogy:gabbro", + "mineralogy:gneiss", + "mineralogy:granite", + "mineralogy:gypsum", + "mineralogy:hornfels", + "mineralogy:limestone", + "mineralogy:marble", + "mineralogy:novaculite", + "mineralogy:pegmatite", + "mineralogy:peridotite", + "mineralogy:phyllite", + "mineralogy:pumice", + "mineralogy:quartzite", + "mineralogy:rhyolite", + "mineralogy:rock_salt", + "mineralogy:schist", + "mineralogy:scoria", + "mineralogy:shale", + "mineralogy:siltstone", + "mineralogy:slate", + "mineralogy:tuff" + ] +} diff --git a/src/main/resources/data/mineralogy/tags/items/terrain_rocks.json b/src/main/resources/data/mineralogy/tags/items/terrain_rocks.json new file mode 100644 index 000000000..d745d6595 --- /dev/null +++ b/src/main/resources/data/mineralogy/tags/items/terrain_rocks.json @@ -0,0 +1,42 @@ +{ + "replace": false, + "values": [ + "minecraft:andesite", + "minecraft:basalt", + "minecraft:diorite", + "minecraft:granite", + "minecraft:sandstone", + "minecraft:tuff", + "mineralogy:amphibolite", + "mineralogy:andesite", + "mineralogy:basalt", + "mineralogy:basaltic_glass", + "mineralogy:chalk", + "mineralogy:chert", + "mineralogy:conglomerate", + "mineralogy:diabase", + "mineralogy:diorite", + "mineralogy:dolomite", + "mineralogy:gabbro", + "mineralogy:gneiss", + "mineralogy:granite", + "mineralogy:gypsum", + "mineralogy:hornfels", + "mineralogy:limestone", + "mineralogy:marble", + "mineralogy:novaculite", + "mineralogy:pegmatite", + "mineralogy:peridotite", + "mineralogy:phyllite", + "mineralogy:pumice", + "mineralogy:quartzite", + "mineralogy:rhyolite", + "mineralogy:rock_salt", + "mineralogy:schist", + "mineralogy:scoria", + "mineralogy:shale", + "mineralogy:siltstone", + "mineralogy:slate", + "mineralogy:tuff" + ] +} diff --git a/src/oilCompatibilityTest/resources/META-INF/mods.toml b/src/oilCompatibilityTest/resources/META-INF/mods.toml index be3598a95..dad3205bb 100644 --- a/src/oilCompatibilityTest/resources/META-INF/mods.toml +++ b/src/oilCompatibilityTest/resources/META-INF/mods.toml @@ -18,6 +18,6 @@ side="BOTH" [[dependencies.poweradvantage]] modId="mineralogy" mandatory=true -versionRange="[6.1.2.120061]" +versionRange="[6.1.4.120061]" ordering="AFTER" side="BOTH" diff --git a/src/recipeIntegrationTest/resources/META-INF/mods.toml b/src/recipeIntegrationTest/resources/META-INF/mods.toml index 135770c0c..92a086eaf 100644 --- a/src/recipeIntegrationTest/resources/META-INF/mods.toml +++ b/src/recipeIntegrationTest/resources/META-INF/mods.toml @@ -17,6 +17,6 @@ side="BOTH" [[dependencies.mineralogyrecipeprobe]] modId="mineralogy" mandatory=true -versionRange="[6.1.2.120061]" +versionRange="[6.1.4.120061]" ordering="AFTER" side="BOTH" diff --git a/src/terrainCompatibilityTest/java/zone/moddev/mc/mineralogy/compatprobe/TerrainCompatibilityProbe.java b/src/terrainCompatibilityTest/java/zone/moddev/mc/mineralogy/compatprobe/TerrainCompatibilityProbe.java new file mode 100644 index 000000000..372da01dd --- /dev/null +++ b/src/terrainCompatibilityTest/java/zone/moddev/mc/mineralogy/compatprobe/TerrainCompatibilityProbe.java @@ -0,0 +1,248 @@ +package zone.moddev.mc.mineralogy.compatprobe; + +import java.lang.reflect.*; +import java.nio.charset.StandardCharsets; +import java.nio.file.*; +import java.util.*; +import net.minecraft.core.BlockPos; +import net.minecraft.core.registries.BuiltInRegistries; +import net.minecraft.core.registries.Registries; +import net.minecraft.resources.ResourceLocation; +import net.minecraft.resources.ResourceKey; +import net.minecraft.server.MinecraftServer; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.tags.TagKey; +import net.minecraft.util.RandomSource; +import net.minecraft.world.entity.LivingEntity; +import net.minecraft.world.item.ItemStack; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.Blocks; +import net.minecraftforge.event.server.ServerStartedEvent; +import net.minecraftforge.fml.common.Mod; + +/** Non-shipping probe: exercises vanilla consumers, not replacement Java logic. */ +@Mod("mineralogycompatprobe") +public final class TerrainCompatibilityProbe { + private static final String[] FAMILIES = ("andesite basalt diorite granite rhyolite pegmatite diabase gabbro peridotite " + + "basaltic_glass scoria tuff shale conglomerate dolomite limestone siltstone marble slate schist gneiss phyllite " + + "amphibolite hornfels quartzite novaculite rock_salt").split(" "); + private final List evidence = new ArrayList<>(); + public TerrainCompatibilityProbe() { + net.minecraftforge.common.MinecraftForge.EVENT_BUS.addListener(this::started); + if (Boolean.getBoolean("mineralogy.compatProbe.client")) ClientSmoke.register(); + } + private void started(ServerStartedEvent event) { + if (Boolean.getBoolean("mineralogy.compatProbe.client")) return; + MinecraftServer server = event.getServer(); + try { + if (Boolean.getBoolean("mineralogy.compatProbe.caveSample")) { + sampleCaves(server.overworld()); + finish(server, null); + return; + } + test(server.overworld(), "initial"); + server.reloadResources(server.getPackRepository().getSelectedIds()).whenComplete((unused, failure) -> server.execute(() -> { + try { + if (failure != null) throw new IllegalStateException("Resource reload failed", failure); + test(server.overworld(), "reload"); + finish(server, null); + } catch (Throwable problem) { finish(server, problem); } + })); + } catch (Throwable failure) { finish(server, failure); } + } + private void test(ServerLevel level, String phase) throws Exception { + verifyTags(phase); + verifyCatalysts(level, phase); + verifyFeatures(level, phase); + } + private static ResourceLocation id(String value) { return ResourceLocation.parse(value); } + private static Block block(String value) { + Block result = BuiltInRegistries.BLOCK.get(id(value)); + require(result != null && result != Blocks.AIR, "Missing block " + value); + return result; + } + private static TagKey blockTag(String name) { return TagKey.create(Registries.BLOCK, id(name)); } + private static Set raw() { + Set set = new TreeSet<>(); + for (String name : FAMILIES) set.add("mineralogy:" + name); + for (String name : List.of("chalk", "chert", "gypsum", "pumice")) set.add("mineralogy:" + name); + return set; + } + private void verifyTags(String phase) { + Set terrain = raw(); + for (String name : List.of("andesite", "basalt", "diorite", "granite", "sandstone", "tuff")) terrain.add("minecraft:" + name); + require(terrain.size() == 37, "Incorrect expected terrain cardinality"); + TagKey terrainTag = blockTag("mineralogy:terrain_rocks"); + require(java.util.stream.StreamSupport.stream(BuiltInRegistries.BLOCK.getTagOrEmpty(terrainTag).spliterator(), false).count() == 37, "Loaded terrain cardinality"); + for (String name : terrain) { + require(block(name).defaultBlockState().is(terrainTag), "Terrain omitted " + name); + require(new ItemStack(block(name)).is(TagKey.create(Registries.ITEM, id("mineralogy:terrain_rocks"))), "Item terrain omitted " + name); + for (String tag : List.of("sculk_replaceable", "sculk_replaceable_world_gen", "dripstone_replaceable_blocks", "moss_replaceable", "lush_ground_replaceable")) + require(block(name).defaultBlockState().is(blockTag("minecraft:" + tag)), tag + " omitted " + name); + } + for (String tag : List.of("sculk_replaceable", "dripstone_replaceable_blocks", "moss_replaceable")) { + require(Blocks.STONE.defaultBlockState().is(blockTag("minecraft:" + tag)), "Lost vanilla stone " + tag); + require(Blocks.GOLD_BLOCK.defaultBlockState().is(blockTag("minecraft:" + tag)), "Lost third-party member " + tag); + } + for (String excluded : List.of("basalt_brick", "basalt_smooth", "basalt_slab", "basalt_furnace", "sulfur_ore", "sulfur_block", "rocksaltlamp", "rocksaltstreetlamp")) + require(!block("mineralogy:" + excluded).defaultBlockState().is(terrainTag), "Crafted/non-terrain member " + excluded); + evidence.add(phase + ": 37 block/item terrain identities; all five vanilla consumers; vanilla and third-party members retained"); + } + private void verifyCatalysts(ServerLevel level, String phase) throws Exception { + int index = 0; + for (String substrate : List.of("minecraft:stone", "mineralogy:basalt", "minecraft:basalt", "mineralogy:chalk", "mineralogy:chert", "mineralogy:gypsum", "mineralogy:pumice", "mineralogy:rhyolite")) { + BlockPos center = new BlockPos(index++ * 32, 200, 0); + prepareRoom(level, center, block(substrate), 7); + BlockPos catalystPos = center.offset(-3, 1, 0); + level.setBlockAndUpdate(catalystPos, Blocks.SCULK_CATALYST.defaultBlockState()); + Object catalyst = level.getBlockEntity(catalystPos); + require(catalyst != null, "No catalyst block entity"); + Object listener = call(catalyst, "getListener"); + Class entityTypes = Class.forName("net.minecraft.world.entity.EntityType"); + Object type = entityTypes.getField("ZOMBIE").get(null); + Class zombieClass = Class.forName("net.minecraft.world.entity.monster.Zombie"); + LivingEntity zombie = (LivingEntity)construct(zombieClass, type, level); + zombie.setPos(center.getX() + 0.5, center.getY() + 1, center.getZ() + 0.5); + level.addFreshEntity(zombie); + call(zombie, "die", level.damageSources().generic()); + // Deliver the real death to the catalyst explicitly if the synchronous + // event dispatcher has not yet visited this listener in the probe tick. + Object spreader = call(listener, "getSculkSpreader"); + if (((List)call(spreader, "getCursors")).isEmpty()) { + Class gameEvent = Class.forName("net.minecraft.world.level.gameevent.GameEvent"); + Object dieEvent = gameEvent.getField("ENTITY_DIE").get(null); + Class context = Class.forName("net.minecraft.world.level.gameevent.GameEvent$Context"); + Object ctx = callStatic(context, "of", zombie); + call(listener, "handleGameEvent", level, dieEvent, ctx, zombie.position()); + } + require(!((List)call(spreader, "getCursors")).isEmpty(), "XP death failed to charge catalyst on " + substrate); + RandomSource random = RandomSource.create(81499); + for (int tick = 0; tick < 500; tick++) call(spreader, "updateCursors", level, catalystPos, random, true); + int sculk = count(level, center, 7, Blocks.SCULK); + require(sculk > 0, "Catalyst failed to convert " + substrate); + evidence.add(phase + ": catalyst XP-death " + substrate + " sculk=" + sculk); + zombie.discard(); + } + } + private void verifyFeatures(ServerLevel level, String phase) throws Exception { + Object featureRegistry = call(level.registryAccess(), "lookupOrThrow", Registries.CONFIGURED_FEATURE); + for (String feature : List.of("moss_patch_bonemeal", "dripstone_cluster")) { + ResourceKey key = ResourceKey.create(Registries.CONFIGURED_FEATURE, id("minecraft:" + feature)); + Object holder = call(featureRegistry, "getOrThrow", key); + Object configured = call(holder, "value"); + int index = 0; + for (String substrate : List.of("minecraft:stone", "mineralogy:basalt", "minecraft:basalt", "mineralogy:rhyolite", "mineralogy:chalk", "mineralogy:chert", "mineralogy:gypsum", "mineralogy:pumice", "mineralogy:basalt_brick")) { + BlockPos center = new BlockPos(index++ * 32, 200, 64); + int placed = 0; + for (long seed : new long[] { 3, 17, 81, 109, 531 }) { + prepareRoom(level, center, block(substrate), 12); + call(configured, "place", level, level.getChunkSource().getGenerator(), RandomSource.create(seed), center.above()); + placed += count(level, center, 12, feature.startsWith("moss") ? Blocks.MOSS_BLOCK : Blocks.DRIPSTONE_BLOCK); + if (!feature.startsWith("moss")) placed += count(level, center, 12, Blocks.POINTED_DRIPSTONE); + } + if (substrate.endsWith("basalt_brick")) require(placed == 0, "Feature converted crafted brick substrate: " + feature); + else require(placed > 0, "Vanilla feature failed on " + substrate + ": " + feature); + evidence.add(phase + ": deterministic " + feature + " " + substrate + " blocks=" + placed); + } + } + } + private static void prepareRoom(ServerLevel level, BlockPos center, Block substrate, int radius) { + for (int cx = (center.getX() - radius) >> 4; cx <= (center.getX() + radius) >> 4; cx++) + for (int cz = (center.getZ() - radius) >> 4; cz <= (center.getZ() + radius) >> 4; cz++) { level.setChunkForced(cx, cz, true); level.getChunk(cx, cz); } + for (BlockPos pos : BlockPos.betweenClosed(center.offset(-radius, -3, -radius), center.offset(radius, 13, radius))) { + int dy = pos.getY() - center.getY(); + level.setBlock(pos, (dy <= 0 || dy >= 10 ? substrate : Blocks.AIR).defaultBlockState(), 2); + } + } + private static int count(ServerLevel level, BlockPos center, int radius, Block block) { + int count = 0; + for (BlockPos pos : BlockPos.betweenClosed(center.offset(-radius, -3, -radius), center.offset(radius, 13, radius))) + if (level.getBlockState(pos).is(block)) count++; + return count; + } + private void sampleCaves(ServerLevel level) { + Map counts = new TreeMap<>(); + for (int x = -1; x <= 1; x++) for (int z = -1; z <= 1; z++) level.getChunk(x, z); + for (BlockPos pos : BlockPos.betweenClosed(new BlockPos(-16, -64, -16), new BlockPos(31, 80, 31))) { + String name = BuiltInRegistries.BLOCK.getKey(level.getBlockState(pos).getBlock()).toString(); + if (name.startsWith("mineralogy:") || name.contains("dripstone") || name.contains("moss") || name.contains("cave_vines")) + counts.merge(name, 1L, Long::sum); + } + evidence.add("Paired fresh cave sample: nine chunks; seed -4965128775892001975; y=-64..80"); + counts.forEach((name, count) -> evidence.add(name + "=" + count)); + } + private static final class ClientSmoke { + private static int ticks; + private static int waiting; + private static String lastScreen; + private static void register() { net.minecraftforge.common.MinecraftForge.EVENT_BUS.addListener((net.minecraftforge.event.TickEvent.ClientTickEvent.Post event) -> tick()); } + private static void tick() { + net.minecraft.client.Minecraft client = net.minecraft.client.Minecraft.getInstance(); + Object screen = client.screen; + if (screen != null && !screen.getClass().getName().equals(lastScreen)) { + lastScreen = screen.getClass().getName(); + System.out.println("COMPAT_CLIENT_SCREEN " + lastScreen); + } + if (screen instanceof net.minecraft.client.gui.screens.BackupConfirmScreen backup) { + // The copied disposable world is the only accepted target. Never + // auto-confirm a user world or unrelated dialog. + try { + net.minecraft.client.gui.screens.BackupConfirmScreen.Listener listener = + (net.minecraft.client.gui.screens.BackupConfirmScreen.Listener)field(backup, "onProceed"); + listener.proceed(false, false); + } catch (Exception problem) { throw new IllegalStateException(problem); } + } + if (client.level != null && client.player != null && ++ticks == 200) { + try { Files.writeString(Paths.get("terrain-client-result.txt"), "PASS: rendered integrated world for 200 client ticks\n", StandardCharsets.UTF_8); } + catch (Exception failure) { throw new IllegalStateException(failure); } + client.stop(); + } + if (client.level == null && ++waiting > 2400) { + System.err.println("COMPAT_CLIENT_TIMEOUT " + lastScreen); + client.stop(); + } + } + } + private void finish(MinecraftServer server, Throwable failure) { + try { + String result = String.join("\n", evidence) + "\n" + (failure == null ? "PASS\n" : "FAIL: " + failure + "\n"); + Files.writeString(Paths.get("terrain-compatibility-result.txt"), result, StandardCharsets.UTF_8); + System.out.println("MINERALOGY_TERRAIN_COMPATIBILITY_" + (failure == null ? "PASS" : "FAIL")); + if (failure != null) failure.printStackTrace(); + } catch (Exception io) { io.printStackTrace(); } + server.halt(false); + } + private static void require(boolean condition, String message) { if (!condition) throw new IllegalStateException(message); } + private static Object enumValue(String type, String name) throws Exception { return Class.forName(type).getField(name).get(null); } + private static Object field(Object target, String name) throws Exception { + for (Class type = target.getClass(); type != null; type = type.getSuperclass()) { + try { Field field = type.getDeclaredField(name); field.setAccessible(true); return field.get(target); } + catch (NoSuchFieldException ignored) { } + } + throw new NoSuchFieldException(name); + } + private static Object construct(Class type, Object... args) throws Exception { + for (Constructor constructor : type.getConstructors()) if (matches(constructor.getParameterTypes(), args)) return constructor.newInstance(args); + throw new NoSuchMethodException(type.getName() + " constructor"); + } + private static Object callStatic(Class type, String name, Object... args) throws Exception { return invoke(type, null, name, args); } + private static Object call(Object target, String name, Object... args) throws Exception { return invoke(target.getClass(), target, name, args); } + private static Object invoke(Class type, Object target, String name, Object[] args) throws Exception { + // Search public inherited methods first, then protected native pickup paths. + for (Method method : type.getMethods()) if (method.getName().equals(name) && matches(method.getParameterTypes(), args)) { method.setAccessible(true); return method.invoke(target, args); } + for (Class cursor = type; cursor != null; cursor = cursor.getSuperclass()) for (Method method : cursor.getDeclaredMethods()) + if (method.getName().equals(name) && matches(method.getParameterTypes(), args)) { method.setAccessible(true); return method.invoke(target, args); } + throw new NoSuchMethodException(type.getName() + "." + name + Arrays.toString(args)); + } + private static boolean matches(Class[] params, Object[] args) { + if (params.length != args.length) return false; + for (int index = 0; index < params.length; index++) { + Class type = params[index]; + if (type == boolean.class) type = Boolean.class; + if (type == int.class) type = Integer.class; + if (type == double.class) type = Double.class; + if (args[index] != null && !type.isInstance(args[index])) return false; + } + return true; + } +} diff --git a/src/terrainCompatibilityTest/resources/META-INF/mods.toml b/src/terrainCompatibilityTest/resources/META-INF/mods.toml new file mode 100644 index 000000000..4dc750fa6 --- /dev/null +++ b/src/terrainCompatibilityTest/resources/META-INF/mods.toml @@ -0,0 +1,14 @@ +modLoader="javafml" +loaderVersion="[50,)" +license="LGPL-2.1-only" +[[mods]] +modId="mineralogycompatprobe" +version="1" +displayName="Non-shipping Mineralogy Terrain Compatibility Probe" +[[dependencies.mineralogycompatprobe]] +modId="mineralogy" +mandatory=true +# Includes the accepted baseline solely for paired before/after cave samples. +versionRange="[6.1.2,6.1.5)" +ordering="AFTER" +side="BOTH" diff --git a/src/terrainCompatibilityTest/resources/data/minecraft/tags/blocks/dripstone_replaceable_blocks.json b/src/terrainCompatibilityTest/resources/data/minecraft/tags/blocks/dripstone_replaceable_blocks.json new file mode 100644 index 000000000..3d000f50f --- /dev/null +++ b/src/terrainCompatibilityTest/resources/data/minecraft/tags/blocks/dripstone_replaceable_blocks.json @@ -0,0 +1 @@ +{"replace":false,"values":["minecraft:gold_block"]} diff --git a/src/terrainCompatibilityTest/resources/data/minecraft/tags/blocks/moss_replaceable.json b/src/terrainCompatibilityTest/resources/data/minecraft/tags/blocks/moss_replaceable.json new file mode 100644 index 000000000..3d000f50f --- /dev/null +++ b/src/terrainCompatibilityTest/resources/data/minecraft/tags/blocks/moss_replaceable.json @@ -0,0 +1 @@ +{"replace":false,"values":["minecraft:gold_block"]} diff --git a/src/terrainCompatibilityTest/resources/data/minecraft/tags/blocks/sculk_replaceable.json b/src/terrainCompatibilityTest/resources/data/minecraft/tags/blocks/sculk_replaceable.json new file mode 100644 index 000000000..3d000f50f --- /dev/null +++ b/src/terrainCompatibilityTest/resources/data/minecraft/tags/blocks/sculk_replaceable.json @@ -0,0 +1 @@ +{"replace":false,"values":["minecraft:gold_block"]} diff --git a/src/terrainCompatibilityTest/resources/data/mineralogycompatprobe/worldgen/world_preset/dripstone.json b/src/terrainCompatibilityTest/resources/data/mineralogycompatprobe/worldgen/world_preset/dripstone.json new file mode 100644 index 000000000..0290a0578 --- /dev/null +++ b/src/terrainCompatibilityTest/resources/data/mineralogycompatprobe/worldgen/world_preset/dripstone.json @@ -0,0 +1 @@ +{"dimensions":{"minecraft:overworld":{"type":"minecraft:overworld","generator":{"type":"minecraft:noise","biome_source":{"type":"minecraft:fixed","biome":"minecraft:dripstone_caves"},"settings":"minecraft:overworld"}},"minecraft:the_nether":{"type":"minecraft:the_nether","generator":{"type":"minecraft:noise","biome_source":{"type":"minecraft:multi_noise","preset":"minecraft:nether"},"settings":"minecraft:nether"}},"minecraft:the_end":{"type":"minecraft:the_end","generator":{"type":"minecraft:noise","biome_source":{"type":"minecraft:the_end"},"settings":"minecraft:end"}}}} diff --git a/src/terrainCompatibilityTest/resources/data/mineralogycompatprobe/worldgen/world_preset/lush.json b/src/terrainCompatibilityTest/resources/data/mineralogycompatprobe/worldgen/world_preset/lush.json new file mode 100644 index 000000000..48a5490a2 --- /dev/null +++ b/src/terrainCompatibilityTest/resources/data/mineralogycompatprobe/worldgen/world_preset/lush.json @@ -0,0 +1 @@ +{"dimensions":{"minecraft:overworld":{"type":"minecraft:overworld","generator":{"type":"minecraft:noise","biome_source":{"type":"minecraft:fixed","biome":"minecraft:lush_caves"},"settings":"minecraft:overworld"}},"minecraft:the_nether":{"type":"minecraft:the_nether","generator":{"type":"minecraft:noise","biome_source":{"type":"minecraft:multi_noise","preset":"minecraft:nether"},"settings":"minecraft:nether"}},"minecraft:the_end":{"type":"minecraft:the_end","generator":{"type":"minecraft:noise","biome_source":{"type":"minecraft:the_end"},"settings":"minecraft:end"}}}} diff --git a/src/terrainCompatibilityTest/resources/pack.mcmeta b/src/terrainCompatibilityTest/resources/pack.mcmeta new file mode 100644 index 000000000..f62d0929e --- /dev/null +++ b/src/terrainCompatibilityTest/resources/pack.mcmeta @@ -0,0 +1,6 @@ +{ + "pack": { + "description": "Non-shipping Mineralogy compatibility fixture", + "pack_format": 32 + } +} diff --git a/src/test/java/zone/moddev/mc/mineralogy/ResourceContractTest.java b/src/test/java/zone/moddev/mc/mineralogy/ResourceContractTest.java index 92e6aea60..228233cb1 100644 --- a/src/test/java/zone/moddev/mc/mineralogy/ResourceContractTest.java +++ b/src/test/java/zone/moddev/mc/mineralogy/ResourceContractTest.java @@ -580,7 +580,7 @@ public void nativeSlabsAndCobblestoneOverridesUseStableConditionalTags() throws @Test public void oilAndBuildMetadataUseStableTargetIdentities() throws Exception { String properties = new String(Files.readAllBytes(new File("gradle.properties").toPath()), StandardCharsets.UTF_8); - assertTrue(properties.contains("mod_version=6.1.2.120061")); + assertTrue(properties.contains("mod_version=6.1.4.120061")); assertTrue(properties.contains("orespawn_curse_file_id=8786031")); String build = new String(Files.readAllBytes(new File("build.gradle").toPath()), StandardCharsets.UTF_8); assertTrue(build.contains("runtimeOnly \"curse.maven:mmd-orespawn-")); diff --git a/src/test/java/zone/moddev/mc/mineralogy/TerrainCompatibilityContractTest.java b/src/test/java/zone/moddev/mc/mineralogy/TerrainCompatibilityContractTest.java new file mode 100644 index 000000000..1748214b2 --- /dev/null +++ b/src/test/java/zone/moddev/mc/mineralogy/TerrainCompatibilityContractTest.java @@ -0,0 +1,107 @@ +package zone.moddev.mc.mineralogy; + +import com.google.gson.*; +import org.junit.Test; +import java.nio.charset.StandardCharsets; +import java.nio.file.*; +import java.util.*; +import static org.junit.Assert.*; + +/** Target-independent resource contract; runtime probes independently test vanilla consumers. */ +public class TerrainCompatibilityContractTest { + private static final Path ROOT = Paths.get("src/main/resources/data"); + private static final String[] FAMILIES = ("andesite basalt diorite granite rhyolite pegmatite diabase gabbro peridotite " + + "basaltic_glass scoria tuff shale conglomerate dolomite limestone siltstone marble slate schist gneiss phyllite " + + "amphibolite hornfels quartzite novaculite rock_salt").split(" "); + + private String minecraft() throws Exception { + Properties properties = new Properties(); + try (java.io.Reader reader = Files.newBufferedReader(Paths.get("gradle.properties"))) { properties.load(reader); } + return properties.getProperty("minecraft_version"); + } + private String kind(String kind) throws Exception { + return Arrays.asList("1.19.4", "1.20.1", "1.20.6").contains(minecraft()) ? kind + "s" : kind; + } + private JsonObject json(String path) throws Exception { + return JsonParser.parseString(new String(Files.readAllBytes(ROOT.resolve(path)), StandardCharsets.UTF_8)).getAsJsonObject(); + } + private Set members(JsonObject tag, boolean optional) { + assertEquals(new HashSet<>(Arrays.asList("replace", "values")), tag.keySet()); + assertFalse(tag.get("replace").getAsBoolean()); + Set ids = new TreeSet<>(); + for (JsonElement value : tag.getAsJsonArray("values")) { + String id; + if (value.isJsonObject()) { + assertTrue("Unexpected optional entry", optional); + JsonObject entry = value.getAsJsonObject(); + assertEquals(new HashSet<>(Arrays.asList("id", "required")), entry.keySet()); + assertFalse(entry.get("required").getAsBoolean()); + id = entry.get("id").getAsString(); + } else { assertTrue(value.isJsonPrimitive() && value.getAsJsonPrimitive().isString()); id = value.getAsString(); } + assertTrue("Malformed member: " + id, id.matches("#?[a-z0-9_.-]+:[a-z0-9_/.-]+")); + assertTrue("Duplicate: " + id, ids.add(id)); + } + return ids; + } + private Set raw() { + Set result = new TreeSet<>(); + for (String family : FAMILIES) result.add("mineralogy:" + family); + for (String special : Arrays.asList("chalk", "chert", "gypsum", "pumice")) result.add("mineralogy:" + special); + return result; + } + @Test public void terrainIsExactlyAllProviderOutputsAndLegacyAliases() throws Exception { + Set expected = raw(); + for (String nativeRock : Arrays.asList("andesite", "basalt", "diorite", "granite", "sandstone", "tuff")) expected.add("minecraft:" + nativeRock); + assertEquals(37, expected.size()); + JsonObject provider = json("mineralogy/orespawn/provider.json"); + Set providerMembers = new TreeSet<>(); + for (Map.Entry rule : provider.getAsJsonObject("rocks").entrySet()) providerMembers.add(rule.getValue().getAsJsonObject().get("block").getAsString()); + assertEquals(32, providerMembers.size()); + providerMembers.addAll(provider.getAsJsonObject("profile_defaults").getAsJsonObject("worldgen_aliases").keySet()); + assertEquals(expected, providerMembers); + assertEquals(expected, members(json("mineralogy/tags/" + kind("block") + "/terrain_rocks.json"), false)); + assertEquals(expected, members(json("mineralogy/tags/" + kind("item") + "/terrain_rocks.json"), false)); + } + @Test public void naturalReplacementIsAdditiveAndNotConfigConditional() throws Exception { + for (String name : Arrays.asList("sculk_replaceable", "dripstone_replaceable_blocks", "moss_replaceable")) + assertEquals(Collections.singleton("#mineralogy:terrain_rocks"), members(json("minecraft/tags/" + kind("block") + "/" + name + ".json"), false)); + // Vanilla aggregate references, not redundant overrides, are checked by the real-loader probe. + assertFalse(Files.exists(ROOT.resolve("minecraft/tags/" + kind("block") + "/sculk_replaceable_world_gen.json"))); + assertFalse(Files.exists(ROOT.resolve("minecraft/tags/" + kind("block") + "/lush_ground_replaceable.json"))); + } + @Test public void sulfurCubeMembershipIsOnlySupportedFullRockItems() throws Exception { + boolean cubes = Arrays.asList("26.2", "26.3").contains(minecraft()); + Path stones = ROOT.resolve("mineralogy/tags/" + kind("item") + "/sulfur_cube_stones.json"); + Path archetype = ROOT.resolve("minecraft/tags/" + kind("item") + "/sulfur_cube_archetype/slow_bouncy.json"); + if (!cubes) { assertFalse(Files.exists(stones)); assertFalse(Files.exists(archetype)); return; } + Set expected = raw(); + for (String suffix : Arrays.asList("_smooth", "_brick", "_smooth_brick")) + for (String family : FAMILIES) expected.add("mineralogy:" + family + suffix); + JsonObject tag = json("mineralogy/tags/" + kind("item") + "/sulfur_cube_stones.json"); + assertEquals(112, expected.size()); + assertEquals(expected, members(tag, true)); + for (String id : expected) { + String name = id.substring("mineralogy:".length()); + assertTrue("Nonexistent block identity: " + id, Files.exists(Paths.get("src/main/resources/assets/mineralogy/blockstates/" + name + ".json"))); + assertTrue("Nonexistent item identity: " + id, Files.exists(Paths.get("src/main/resources/assets/mineralogy/models/item/" + name + ".json"))); + } + int optional = 0; + for (JsonElement value : tag.getAsJsonArray("values")) { + if (value.isJsonObject()) { optional++; assertFalse(raw().contains(value.getAsJsonObject().get("id").getAsString())); } + else assertTrue(raw().contains(value.getAsString())); + } + assertEquals(81, optional); + assertEquals(Collections.singleton("#mineralogy:sulfur_cube_stones"), members(json("minecraft/tags/" + kind("item") + "/sulfur_cube_archetype/slow_bouncy.json"), false)); + } + @Test public void noWrongEraTagDirectoriesOrSulfurCubeResources() throws Exception { + String wrongBlock = kind("block").equals("block") ? "blocks" : "block"; + String wrongItem = kind("item").equals("item") ? "items" : "item"; + assertFalse(Files.exists(ROOT.resolve("mineralogy/tags/" + wrongBlock + "/terrain_rocks.json"))); + assertFalse(Files.exists(ROOT.resolve("mineralogy/tags/" + wrongItem + "/terrain_rocks.json"))); + if (!Arrays.asList("26.2", "26.3").contains(minecraft())) { + try (java.util.stream.Stream paths = Files.walk(ROOT)) { + assertFalse(paths.anyMatch(path -> path.toString().contains("sulfur_cube"))); + } + } + } +} diff --git a/src/test/java/zone/moddev/mc/mineralogy/WorkflowContractTest.java b/src/test/java/zone/moddev/mc/mineralogy/WorkflowContractTest.java index ae2ac7367..264da0b38 100644 --- a/src/test/java/zone/moddev/mc/mineralogy/WorkflowContractTest.java +++ b/src/test/java/zone/moddev/mc/mineralogy/WorkflowContractTest.java @@ -19,7 +19,7 @@ public void releaseMetadataIdentifiesTheGenericForgeTarget() throws Exception { try (FileInputStream input = new FileInputStream("gradle.properties")) { properties.load(input); } - assertEquals("6.1.2.120061", properties.getProperty("mod_version")); + assertEquals("6.1.4.120061", properties.getProperty("mod_version")); assertEquals("1.20.6", properties.getProperty("minecraft_version")); assertEquals(properties.getProperty("mc_version"), properties.getProperty("minecraft_version")); assertEquals("forge", properties.getProperty("loader_name")); From 5fad9730386a43f7a5e9257e584ab8920d210e22 Mon Sep 17 00:00:00 2001 From: JohnBraham Date: Tue, 6 Oct 2026 13:11:50 +0100 Subject: [PATCH 2/3] Fix Mineralogy's natural-stone tags on Forge 1.20.6 --- CHANGELOG.txt | 20 +- README.md | 11 +- docs/DEVELOPER_GUIDE.md | 19 + docs/PLAYER_GUIDE.md | 15 + docs/VERSIONS.md | 10 +- gradle/terrain-compatibility-probe.gradle | 6 +- gradle/verify-terrain-compatibility.gradle | 56 +- scripts/generate-recipes.ps1 | 2 +- scripts/generate-terrain-compatibility.ps1 | 97 +- scripts/guard-construction-loot.ps1 | 24 + .../compat/CobblestoneTagPolicy.java | 5 + .../compat/VanillaTerrainHooks.java | 19 + src/main/resources/META-INF/coremods.json | 3 +- .../mineralogy_terrain_compatibility.js | 46 + .../forge/tags/blocks/cobblestone/normal.json | 7 + .../data/forge/tags/blocks/ores.json | 8 + .../data/forge/tags/blocks/stone.json | 6 + .../forge/tags/blocks/storage_blocks.json | 11 + .../forge/tags/items/cobblestone/normal.json | 7 + .../resources/data/forge/tags/items/ores.json | 8 + .../data/forge/tags/items/stone.json | 6 + .../data/forge/tags/items/storage_blocks.json | 11 + .../tags/blocks/azalea_root_replaceable.json | 6 + .../tags/blocks/goats_spawnable_on.json | 6 + .../data/minecraft/tags/blocks/slabs.json | 437 +++ .../tags/blocks/snaps_goat_horn.json | 6 + .../data/minecraft/tags/blocks/stairs.json | 437 +++ .../tags/blocks/wall_post_override.json | 6 + .../data/minecraft/tags/blocks/walls.json | 540 +++- .../data/minecraft/tags/items/slabs.json | 437 +++ .../data/minecraft/tags/items/stairs.json | 437 +++ .../data/minecraft/tags/items/walls.json | 540 +++- .../loot_tables/blocks/amphibolite_brick.json | 6 +- .../blocks/amphibolite_brick_furnace.json | 6 +- .../blocks/amphibolite_brick_slab.json | 6 +- .../blocks/amphibolite_brick_stairs.json | 6 +- .../blocks/amphibolite_brick_wall.json | 6 +- .../blocks/amphibolite_furnace.json | 6 +- .../blocks/amphibolite_relief_axe.json | 6 +- .../blocks/amphibolite_relief_blank.json | 6 +- .../blocks/amphibolite_relief_cross.json | 6 +- .../blocks/amphibolite_relief_hammer.json | 6 +- .../blocks/amphibolite_relief_hoe.json | 6 +- .../blocks/amphibolite_relief_horizontal.json | 6 +- .../blocks/amphibolite_relief_i.json | 6 +- .../blocks/amphibolite_relief_left.json | 6 +- .../blocks/amphibolite_relief_pickaxe.json | 6 +- .../blocks/amphibolite_relief_plus.json | 6 +- .../blocks/amphibolite_relief_right.json | 6 +- .../blocks/amphibolite_relief_sword.json | 6 +- .../blocks/amphibolite_relief_vertical.json | 6 +- .../loot_tables/blocks/amphibolite_slab.json | 6 +- .../blocks/amphibolite_smooth.json | 6 +- .../blocks/amphibolite_smooth_brick.json | 6 +- .../amphibolite_smooth_brick_furnace.json | 6 +- .../blocks/amphibolite_smooth_brick_slab.json | 6 +- .../amphibolite_smooth_brick_stairs.json | 6 +- .../blocks/amphibolite_smooth_brick_wall.json | 6 +- .../blocks/amphibolite_smooth_furnace.json | 6 +- .../blocks/amphibolite_smooth_slab.json | 6 +- .../blocks/amphibolite_smooth_stairs.json | 6 +- .../blocks/amphibolite_smooth_wall.json | 6 +- .../blocks/amphibolite_stairs.json | 6 +- .../loot_tables/blocks/amphibolite_wall.json | 6 +- .../loot_tables/blocks/andesite_brick.json | 6 +- .../blocks/andesite_brick_furnace.json | 6 +- .../blocks/andesite_brick_slab.json | 6 +- .../blocks/andesite_brick_stairs.json | 6 +- .../blocks/andesite_brick_wall.json | 6 +- .../loot_tables/blocks/andesite_furnace.json | 6 +- .../blocks/andesite_relief_axe.json | 6 +- .../blocks/andesite_relief_blank.json | 6 +- .../blocks/andesite_relief_cross.json | 6 +- .../blocks/andesite_relief_hammer.json | 6 +- .../blocks/andesite_relief_hoe.json | 6 +- .../blocks/andesite_relief_horizontal.json | 6 +- .../loot_tables/blocks/andesite_relief_i.json | 6 +- .../blocks/andesite_relief_left.json | 6 +- .../blocks/andesite_relief_pickaxe.json | 6 +- .../blocks/andesite_relief_plus.json | 6 +- .../blocks/andesite_relief_right.json | 6 +- .../blocks/andesite_relief_sword.json | 6 +- .../blocks/andesite_relief_vertical.json | 6 +- .../loot_tables/blocks/andesite_slab.json | 6 +- .../loot_tables/blocks/andesite_smooth.json | 6 +- .../blocks/andesite_smooth_brick.json | 6 +- .../blocks/andesite_smooth_brick_furnace.json | 6 +- .../blocks/andesite_smooth_brick_slab.json | 6 +- .../blocks/andesite_smooth_brick_stairs.json | 6 +- .../blocks/andesite_smooth_brick_wall.json | 6 +- .../blocks/andesite_smooth_furnace.json | 6 +- .../blocks/andesite_smooth_slab.json | 6 +- .../blocks/andesite_smooth_stairs.json | 6 +- .../blocks/andesite_smooth_wall.json | 6 +- .../loot_tables/blocks/andesite_stairs.json | 6 +- .../loot_tables/blocks/andesite_wall.json | 6 +- .../loot_tables/blocks/basalt_brick.json | 6 +- .../blocks/basalt_brick_furnace.json | 6 +- .../loot_tables/blocks/basalt_brick_slab.json | 6 +- .../blocks/basalt_brick_stairs.json | 6 +- .../loot_tables/blocks/basalt_brick_wall.json | 6 +- .../loot_tables/blocks/basalt_furnace.json | 6 +- .../loot_tables/blocks/basalt_relief_axe.json | 6 +- .../blocks/basalt_relief_blank.json | 6 +- .../blocks/basalt_relief_cross.json | 6 +- .../blocks/basalt_relief_hammer.json | 6 +- .../loot_tables/blocks/basalt_relief_hoe.json | 6 +- .../blocks/basalt_relief_horizontal.json | 6 +- .../loot_tables/blocks/basalt_relief_i.json | 6 +- .../blocks/basalt_relief_left.json | 6 +- .../blocks/basalt_relief_pickaxe.json | 6 +- .../blocks/basalt_relief_plus.json | 6 +- .../blocks/basalt_relief_right.json | 6 +- .../blocks/basalt_relief_sword.json | 6 +- .../blocks/basalt_relief_vertical.json | 6 +- .../loot_tables/blocks/basalt_slab.json | 6 +- .../loot_tables/blocks/basalt_smooth.json | 6 +- .../blocks/basalt_smooth_brick.json | 6 +- .../blocks/basalt_smooth_brick_furnace.json | 6 +- .../blocks/basalt_smooth_brick_slab.json | 6 +- .../blocks/basalt_smooth_brick_stairs.json | 6 +- .../blocks/basalt_smooth_brick_wall.json | 6 +- .../blocks/basalt_smooth_furnace.json | 6 +- .../blocks/basalt_smooth_slab.json | 6 +- .../blocks/basalt_smooth_stairs.json | 6 +- .../blocks/basalt_smooth_wall.json | 6 +- .../loot_tables/blocks/basalt_stairs.json | 6 +- .../loot_tables/blocks/basalt_wall.json | 6 +- .../blocks/basaltic_glass_brick.json | 6 +- .../blocks/basaltic_glass_brick_furnace.json | 6 +- .../blocks/basaltic_glass_brick_slab.json | 6 +- .../blocks/basaltic_glass_brick_stairs.json | 6 +- .../blocks/basaltic_glass_brick_wall.json | 6 +- .../blocks/basaltic_glass_furnace.json | 6 +- .../blocks/basaltic_glass_relief_axe.json | 6 +- .../blocks/basaltic_glass_relief_blank.json | 6 +- .../blocks/basaltic_glass_relief_cross.json | 6 +- .../blocks/basaltic_glass_relief_hammer.json | 6 +- .../blocks/basaltic_glass_relief_hoe.json | 6 +- .../basaltic_glass_relief_horizontal.json | 6 +- .../blocks/basaltic_glass_relief_i.json | 6 +- .../blocks/basaltic_glass_relief_left.json | 6 +- .../blocks/basaltic_glass_relief_pickaxe.json | 6 +- .../blocks/basaltic_glass_relief_plus.json | 6 +- .../blocks/basaltic_glass_relief_right.json | 6 +- .../blocks/basaltic_glass_relief_sword.json | 6 +- .../basaltic_glass_relief_vertical.json | 6 +- .../blocks/basaltic_glass_slab.json | 6 +- .../blocks/basaltic_glass_smooth.json | 6 +- .../blocks/basaltic_glass_smooth_brick.json | 6 +- .../basaltic_glass_smooth_brick_furnace.json | 6 +- .../basaltic_glass_smooth_brick_slab.json | 6 +- .../basaltic_glass_smooth_brick_stairs.json | 6 +- .../basaltic_glass_smooth_brick_wall.json | 6 +- .../blocks/basaltic_glass_smooth_furnace.json | 6 +- .../blocks/basaltic_glass_smooth_slab.json | 6 +- .../blocks/basaltic_glass_smooth_stairs.json | 6 +- .../blocks/basaltic_glass_smooth_wall.json | 6 +- .../blocks/basaltic_glass_stairs.json | 6 +- .../blocks/basaltic_glass_wall.json | 6 +- .../blocks/conglomerate_brick.json | 6 +- .../blocks/conglomerate_brick_furnace.json | 6 +- .../blocks/conglomerate_brick_slab.json | 6 +- .../blocks/conglomerate_brick_stairs.json | 6 +- .../blocks/conglomerate_brick_wall.json | 6 +- .../blocks/conglomerate_furnace.json | 6 +- .../blocks/conglomerate_relief_axe.json | 6 +- .../blocks/conglomerate_relief_blank.json | 6 +- .../blocks/conglomerate_relief_cross.json | 6 +- .../blocks/conglomerate_relief_hammer.json | 6 +- .../blocks/conglomerate_relief_hoe.json | 6 +- .../conglomerate_relief_horizontal.json | 6 +- .../blocks/conglomerate_relief_i.json | 6 +- .../blocks/conglomerate_relief_left.json | 6 +- .../blocks/conglomerate_relief_pickaxe.json | 6 +- .../blocks/conglomerate_relief_plus.json | 6 +- .../blocks/conglomerate_relief_right.json | 6 +- .../blocks/conglomerate_relief_sword.json | 6 +- .../blocks/conglomerate_relief_vertical.json | 6 +- .../loot_tables/blocks/conglomerate_slab.json | 6 +- .../blocks/conglomerate_smooth.json | 6 +- .../blocks/conglomerate_smooth_brick.json | 6 +- .../conglomerate_smooth_brick_furnace.json | 6 +- .../conglomerate_smooth_brick_slab.json | 6 +- .../conglomerate_smooth_brick_stairs.json | 6 +- .../conglomerate_smooth_brick_wall.json | 6 +- .../blocks/conglomerate_smooth_furnace.json | 6 +- .../blocks/conglomerate_smooth_slab.json | 6 +- .../blocks/conglomerate_smooth_stairs.json | 6 +- .../blocks/conglomerate_smooth_wall.json | 6 +- .../blocks/conglomerate_stairs.json | 6 +- .../loot_tables/blocks/conglomerate_wall.json | 6 +- .../loot_tables/blocks/diabase_brick.json | 6 +- .../blocks/diabase_brick_furnace.json | 6 +- .../blocks/diabase_brick_slab.json | 6 +- .../blocks/diabase_brick_stairs.json | 6 +- .../blocks/diabase_brick_wall.json | 6 +- .../loot_tables/blocks/diabase_furnace.json | 6 +- .../blocks/diabase_relief_axe.json | 6 +- .../blocks/diabase_relief_blank.json | 6 +- .../blocks/diabase_relief_cross.json | 6 +- .../blocks/diabase_relief_hammer.json | 6 +- .../blocks/diabase_relief_hoe.json | 6 +- .../blocks/diabase_relief_horizontal.json | 6 +- .../loot_tables/blocks/diabase_relief_i.json | 6 +- .../blocks/diabase_relief_left.json | 6 +- .../blocks/diabase_relief_pickaxe.json | 6 +- .../blocks/diabase_relief_plus.json | 6 +- .../blocks/diabase_relief_right.json | 6 +- .../blocks/diabase_relief_sword.json | 6 +- .../blocks/diabase_relief_vertical.json | 6 +- .../loot_tables/blocks/diabase_slab.json | 6 +- .../loot_tables/blocks/diabase_smooth.json | 6 +- .../blocks/diabase_smooth_brick.json | 6 +- .../blocks/diabase_smooth_brick_furnace.json | 6 +- .../blocks/diabase_smooth_brick_slab.json | 6 +- .../blocks/diabase_smooth_brick_stairs.json | 6 +- .../blocks/diabase_smooth_brick_wall.json | 6 +- .../blocks/diabase_smooth_furnace.json | 6 +- .../blocks/diabase_smooth_slab.json | 6 +- .../blocks/diabase_smooth_stairs.json | 6 +- .../blocks/diabase_smooth_wall.json | 6 +- .../loot_tables/blocks/diabase_stairs.json | 6 +- .../loot_tables/blocks/diabase_wall.json | 6 +- .../loot_tables/blocks/diorite_brick.json | 6 +- .../blocks/diorite_brick_furnace.json | 6 +- .../blocks/diorite_brick_slab.json | 6 +- .../blocks/diorite_brick_stairs.json | 6 +- .../blocks/diorite_brick_wall.json | 6 +- .../loot_tables/blocks/diorite_furnace.json | 6 +- .../blocks/diorite_relief_axe.json | 6 +- .../blocks/diorite_relief_blank.json | 6 +- .../blocks/diorite_relief_cross.json | 6 +- .../blocks/diorite_relief_hammer.json | 6 +- .../blocks/diorite_relief_hoe.json | 6 +- .../blocks/diorite_relief_horizontal.json | 6 +- .../loot_tables/blocks/diorite_relief_i.json | 6 +- .../blocks/diorite_relief_left.json | 6 +- .../blocks/diorite_relief_pickaxe.json | 6 +- .../blocks/diorite_relief_plus.json | 6 +- .../blocks/diorite_relief_right.json | 6 +- .../blocks/diorite_relief_sword.json | 6 +- .../blocks/diorite_relief_vertical.json | 6 +- .../loot_tables/blocks/diorite_slab.json | 6 +- .../loot_tables/blocks/diorite_smooth.json | 6 +- .../blocks/diorite_smooth_brick.json | 6 +- .../blocks/diorite_smooth_brick_furnace.json | 6 +- .../blocks/diorite_smooth_brick_slab.json | 6 +- .../blocks/diorite_smooth_brick_stairs.json | 6 +- .../blocks/diorite_smooth_brick_wall.json | 6 +- .../blocks/diorite_smooth_furnace.json | 6 +- .../blocks/diorite_smooth_slab.json | 6 +- .../blocks/diorite_smooth_stairs.json | 6 +- .../blocks/diorite_smooth_wall.json | 6 +- .../loot_tables/blocks/diorite_stairs.json | 6 +- .../loot_tables/blocks/diorite_wall.json | 6 +- .../loot_tables/blocks/dolomite_brick.json | 6 +- .../blocks/dolomite_brick_furnace.json | 6 +- .../blocks/dolomite_brick_slab.json | 6 +- .../blocks/dolomite_brick_stairs.json | 6 +- .../blocks/dolomite_brick_wall.json | 6 +- .../loot_tables/blocks/dolomite_furnace.json | 6 +- .../blocks/dolomite_relief_axe.json | 6 +- .../blocks/dolomite_relief_blank.json | 6 +- .../blocks/dolomite_relief_cross.json | 6 +- .../blocks/dolomite_relief_hammer.json | 6 +- .../blocks/dolomite_relief_hoe.json | 6 +- .../blocks/dolomite_relief_horizontal.json | 6 +- .../loot_tables/blocks/dolomite_relief_i.json | 6 +- .../blocks/dolomite_relief_left.json | 6 +- .../blocks/dolomite_relief_pickaxe.json | 6 +- .../blocks/dolomite_relief_plus.json | 6 +- .../blocks/dolomite_relief_right.json | 6 +- .../blocks/dolomite_relief_sword.json | 6 +- .../blocks/dolomite_relief_vertical.json | 6 +- .../loot_tables/blocks/dolomite_slab.json | 6 +- .../loot_tables/blocks/dolomite_smooth.json | 6 +- .../blocks/dolomite_smooth_brick.json | 6 +- .../blocks/dolomite_smooth_brick_furnace.json | 6 +- .../blocks/dolomite_smooth_brick_slab.json | 6 +- .../blocks/dolomite_smooth_brick_stairs.json | 6 +- .../blocks/dolomite_smooth_brick_wall.json | 6 +- .../blocks/dolomite_smooth_furnace.json | 6 +- .../blocks/dolomite_smooth_slab.json | 6 +- .../blocks/dolomite_smooth_stairs.json | 6 +- .../blocks/dolomite_smooth_wall.json | 6 +- .../loot_tables/blocks/dolomite_stairs.json | 6 +- .../loot_tables/blocks/dolomite_wall.json | 6 +- .../loot_tables/blocks/gabbro_brick.json | 6 +- .../blocks/gabbro_brick_furnace.json | 6 +- .../loot_tables/blocks/gabbro_brick_slab.json | 6 +- .../blocks/gabbro_brick_stairs.json | 6 +- .../loot_tables/blocks/gabbro_brick_wall.json | 6 +- .../loot_tables/blocks/gabbro_furnace.json | 6 +- .../loot_tables/blocks/gabbro_relief_axe.json | 6 +- .../blocks/gabbro_relief_blank.json | 6 +- .../blocks/gabbro_relief_cross.json | 6 +- .../blocks/gabbro_relief_hammer.json | 6 +- .../loot_tables/blocks/gabbro_relief_hoe.json | 6 +- .../blocks/gabbro_relief_horizontal.json | 6 +- .../loot_tables/blocks/gabbro_relief_i.json | 6 +- .../blocks/gabbro_relief_left.json | 6 +- .../blocks/gabbro_relief_pickaxe.json | 6 +- .../blocks/gabbro_relief_plus.json | 6 +- .../blocks/gabbro_relief_right.json | 6 +- .../blocks/gabbro_relief_sword.json | 6 +- .../blocks/gabbro_relief_vertical.json | 6 +- .../loot_tables/blocks/gabbro_slab.json | 6 +- .../loot_tables/blocks/gabbro_smooth.json | 6 +- .../blocks/gabbro_smooth_brick.json | 6 +- .../blocks/gabbro_smooth_brick_furnace.json | 6 +- .../blocks/gabbro_smooth_brick_slab.json | 6 +- .../blocks/gabbro_smooth_brick_stairs.json | 6 +- .../blocks/gabbro_smooth_brick_wall.json | 6 +- .../blocks/gabbro_smooth_furnace.json | 6 +- .../blocks/gabbro_smooth_slab.json | 6 +- .../blocks/gabbro_smooth_stairs.json | 6 +- .../blocks/gabbro_smooth_wall.json | 6 +- .../loot_tables/blocks/gabbro_stairs.json | 6 +- .../loot_tables/blocks/gabbro_wall.json | 6 +- .../loot_tables/blocks/gneiss_brick.json | 6 +- .../blocks/gneiss_brick_furnace.json | 6 +- .../loot_tables/blocks/gneiss_brick_slab.json | 6 +- .../blocks/gneiss_brick_stairs.json | 6 +- .../loot_tables/blocks/gneiss_brick_wall.json | 6 +- .../loot_tables/blocks/gneiss_furnace.json | 6 +- .../loot_tables/blocks/gneiss_relief_axe.json | 6 +- .../blocks/gneiss_relief_blank.json | 6 +- .../blocks/gneiss_relief_cross.json | 6 +- .../blocks/gneiss_relief_hammer.json | 6 +- .../loot_tables/blocks/gneiss_relief_hoe.json | 6 +- .../blocks/gneiss_relief_horizontal.json | 6 +- .../loot_tables/blocks/gneiss_relief_i.json | 6 +- .../blocks/gneiss_relief_left.json | 6 +- .../blocks/gneiss_relief_pickaxe.json | 6 +- .../blocks/gneiss_relief_plus.json | 6 +- .../blocks/gneiss_relief_right.json | 6 +- .../blocks/gneiss_relief_sword.json | 6 +- .../blocks/gneiss_relief_vertical.json | 6 +- .../loot_tables/blocks/gneiss_slab.json | 6 +- .../loot_tables/blocks/gneiss_smooth.json | 6 +- .../blocks/gneiss_smooth_brick.json | 6 +- .../blocks/gneiss_smooth_brick_furnace.json | 6 +- .../blocks/gneiss_smooth_brick_slab.json | 6 +- .../blocks/gneiss_smooth_brick_stairs.json | 6 +- .../blocks/gneiss_smooth_brick_wall.json | 6 +- .../blocks/gneiss_smooth_furnace.json | 6 +- .../blocks/gneiss_smooth_slab.json | 6 +- .../blocks/gneiss_smooth_stairs.json | 6 +- .../blocks/gneiss_smooth_wall.json | 6 +- .../loot_tables/blocks/gneiss_stairs.json | 6 +- .../loot_tables/blocks/gneiss_wall.json | 6 +- .../loot_tables/blocks/granite_brick.json | 6 +- .../blocks/granite_brick_furnace.json | 6 +- .../blocks/granite_brick_slab.json | 6 +- .../blocks/granite_brick_stairs.json | 6 +- .../blocks/granite_brick_wall.json | 6 +- .../loot_tables/blocks/granite_furnace.json | 6 +- .../blocks/granite_relief_axe.json | 6 +- .../blocks/granite_relief_blank.json | 6 +- .../blocks/granite_relief_cross.json | 6 +- .../blocks/granite_relief_hammer.json | 6 +- .../blocks/granite_relief_hoe.json | 6 +- .../blocks/granite_relief_horizontal.json | 6 +- .../loot_tables/blocks/granite_relief_i.json | 6 +- .../blocks/granite_relief_left.json | 6 +- .../blocks/granite_relief_pickaxe.json | 6 +- .../blocks/granite_relief_plus.json | 6 +- .../blocks/granite_relief_right.json | 6 +- .../blocks/granite_relief_sword.json | 6 +- .../blocks/granite_relief_vertical.json | 6 +- .../loot_tables/blocks/granite_slab.json | 6 +- .../loot_tables/blocks/granite_smooth.json | 6 +- .../blocks/granite_smooth_brick.json | 6 +- .../blocks/granite_smooth_brick_furnace.json | 6 +- .../blocks/granite_smooth_brick_slab.json | 6 +- .../blocks/granite_smooth_brick_stairs.json | 6 +- .../blocks/granite_smooth_brick_wall.json | 6 +- .../blocks/granite_smooth_furnace.json | 6 +- .../blocks/granite_smooth_slab.json | 6 +- .../blocks/granite_smooth_stairs.json | 6 +- .../blocks/granite_smooth_wall.json | 6 +- .../loot_tables/blocks/granite_stairs.json | 6 +- .../loot_tables/blocks/granite_wall.json | 6 +- .../loot_tables/blocks/hornfels_brick.json | 6 +- .../blocks/hornfels_brick_furnace.json | 6 +- .../blocks/hornfels_brick_slab.json | 6 +- .../blocks/hornfels_brick_stairs.json | 6 +- .../blocks/hornfels_brick_wall.json | 6 +- .../loot_tables/blocks/hornfels_furnace.json | 6 +- .../blocks/hornfels_relief_axe.json | 6 +- .../blocks/hornfels_relief_blank.json | 6 +- .../blocks/hornfels_relief_cross.json | 6 +- .../blocks/hornfels_relief_hammer.json | 6 +- .../blocks/hornfels_relief_hoe.json | 6 +- .../blocks/hornfels_relief_horizontal.json | 6 +- .../loot_tables/blocks/hornfels_relief_i.json | 6 +- .../blocks/hornfels_relief_left.json | 6 +- .../blocks/hornfels_relief_pickaxe.json | 6 +- .../blocks/hornfels_relief_plus.json | 6 +- .../blocks/hornfels_relief_right.json | 6 +- .../blocks/hornfels_relief_sword.json | 6 +- .../blocks/hornfels_relief_vertical.json | 6 +- .../loot_tables/blocks/hornfels_slab.json | 6 +- .../loot_tables/blocks/hornfels_smooth.json | 6 +- .../blocks/hornfels_smooth_brick.json | 6 +- .../blocks/hornfels_smooth_brick_furnace.json | 6 +- .../blocks/hornfels_smooth_brick_slab.json | 6 +- .../blocks/hornfels_smooth_brick_stairs.json | 6 +- .../blocks/hornfels_smooth_brick_wall.json | 6 +- .../blocks/hornfels_smooth_furnace.json | 6 +- .../blocks/hornfels_smooth_slab.json | 6 +- .../blocks/hornfels_smooth_stairs.json | 6 +- .../blocks/hornfels_smooth_wall.json | 6 +- .../loot_tables/blocks/hornfels_stairs.json | 6 +- .../loot_tables/blocks/hornfels_wall.json | 6 +- .../loot_tables/blocks/limestone_brick.json | 6 +- .../blocks/limestone_brick_furnace.json | 6 +- .../blocks/limestone_brick_slab.json | 6 +- .../blocks/limestone_brick_stairs.json | 6 +- .../blocks/limestone_brick_wall.json | 6 +- .../loot_tables/blocks/limestone_furnace.json | 6 +- .../blocks/limestone_relief_axe.json | 6 +- .../blocks/limestone_relief_blank.json | 6 +- .../blocks/limestone_relief_cross.json | 6 +- .../blocks/limestone_relief_hammer.json | 6 +- .../blocks/limestone_relief_hoe.json | 6 +- .../blocks/limestone_relief_horizontal.json | 6 +- .../blocks/limestone_relief_i.json | 6 +- .../blocks/limestone_relief_left.json | 6 +- .../blocks/limestone_relief_pickaxe.json | 6 +- .../blocks/limestone_relief_plus.json | 6 +- .../blocks/limestone_relief_right.json | 6 +- .../blocks/limestone_relief_sword.json | 6 +- .../blocks/limestone_relief_vertical.json | 6 +- .../loot_tables/blocks/limestone_slab.json | 6 +- .../loot_tables/blocks/limestone_smooth.json | 6 +- .../blocks/limestone_smooth_brick.json | 6 +- .../limestone_smooth_brick_furnace.json | 6 +- .../blocks/limestone_smooth_brick_slab.json | 6 +- .../blocks/limestone_smooth_brick_stairs.json | 6 +- .../blocks/limestone_smooth_brick_wall.json | 6 +- .../blocks/limestone_smooth_furnace.json | 6 +- .../blocks/limestone_smooth_slab.json | 6 +- .../blocks/limestone_smooth_stairs.json | 6 +- .../blocks/limestone_smooth_wall.json | 6 +- .../loot_tables/blocks/limestone_stairs.json | 6 +- .../loot_tables/blocks/limestone_wall.json | 6 +- .../loot_tables/blocks/marble_brick.json | 6 +- .../blocks/marble_brick_furnace.json | 6 +- .../loot_tables/blocks/marble_brick_slab.json | 6 +- .../blocks/marble_brick_stairs.json | 6 +- .../loot_tables/blocks/marble_brick_wall.json | 6 +- .../loot_tables/blocks/marble_furnace.json | 6 +- .../loot_tables/blocks/marble_relief_axe.json | 6 +- .../blocks/marble_relief_blank.json | 6 +- .../blocks/marble_relief_cross.json | 6 +- .../blocks/marble_relief_hammer.json | 6 +- .../loot_tables/blocks/marble_relief_hoe.json | 6 +- .../blocks/marble_relief_horizontal.json | 6 +- .../loot_tables/blocks/marble_relief_i.json | 6 +- .../blocks/marble_relief_left.json | 6 +- .../blocks/marble_relief_pickaxe.json | 6 +- .../blocks/marble_relief_plus.json | 6 +- .../blocks/marble_relief_right.json | 6 +- .../blocks/marble_relief_sword.json | 6 +- .../blocks/marble_relief_vertical.json | 6 +- .../loot_tables/blocks/marble_slab.json | 6 +- .../loot_tables/blocks/marble_smooth.json | 6 +- .../blocks/marble_smooth_brick.json | 6 +- .../blocks/marble_smooth_brick_furnace.json | 6 +- .../blocks/marble_smooth_brick_slab.json | 6 +- .../blocks/marble_smooth_brick_stairs.json | 6 +- .../blocks/marble_smooth_brick_wall.json | 6 +- .../blocks/marble_smooth_furnace.json | 6 +- .../blocks/marble_smooth_slab.json | 6 +- .../blocks/marble_smooth_stairs.json | 6 +- .../blocks/marble_smooth_wall.json | 6 +- .../loot_tables/blocks/marble_stairs.json | 6 +- .../loot_tables/blocks/marble_wall.json | 6 +- .../loot_tables/blocks/novaculite_brick.json | 6 +- .../blocks/novaculite_brick_furnace.json | 6 +- .../blocks/novaculite_brick_slab.json | 6 +- .../blocks/novaculite_brick_stairs.json | 6 +- .../blocks/novaculite_brick_wall.json | 6 +- .../blocks/novaculite_furnace.json | 6 +- .../blocks/novaculite_relief_axe.json | 6 +- .../blocks/novaculite_relief_blank.json | 6 +- .../blocks/novaculite_relief_cross.json | 6 +- .../blocks/novaculite_relief_hammer.json | 6 +- .../blocks/novaculite_relief_hoe.json | 6 +- .../blocks/novaculite_relief_horizontal.json | 6 +- .../blocks/novaculite_relief_i.json | 6 +- .../blocks/novaculite_relief_left.json | 6 +- .../blocks/novaculite_relief_pickaxe.json | 6 +- .../blocks/novaculite_relief_plus.json | 6 +- .../blocks/novaculite_relief_right.json | 6 +- .../blocks/novaculite_relief_sword.json | 6 +- .../blocks/novaculite_relief_vertical.json | 6 +- .../loot_tables/blocks/novaculite_slab.json | 6 +- .../loot_tables/blocks/novaculite_smooth.json | 6 +- .../blocks/novaculite_smooth_brick.json | 6 +- .../novaculite_smooth_brick_furnace.json | 6 +- .../blocks/novaculite_smooth_brick_slab.json | 6 +- .../novaculite_smooth_brick_stairs.json | 6 +- .../blocks/novaculite_smooth_brick_wall.json | 6 +- .../blocks/novaculite_smooth_furnace.json | 6 +- .../blocks/novaculite_smooth_slab.json | 6 +- .../blocks/novaculite_smooth_stairs.json | 6 +- .../blocks/novaculite_smooth_wall.json | 6 +- .../loot_tables/blocks/novaculite_stairs.json | 6 +- .../loot_tables/blocks/novaculite_wall.json | 6 +- .../loot_tables/blocks/pegmatite_brick.json | 6 +- .../blocks/pegmatite_brick_furnace.json | 6 +- .../blocks/pegmatite_brick_slab.json | 6 +- .../blocks/pegmatite_brick_stairs.json | 6 +- .../blocks/pegmatite_brick_wall.json | 6 +- .../loot_tables/blocks/pegmatite_furnace.json | 6 +- .../blocks/pegmatite_relief_axe.json | 6 +- .../blocks/pegmatite_relief_blank.json | 6 +- .../blocks/pegmatite_relief_cross.json | 6 +- .../blocks/pegmatite_relief_hammer.json | 6 +- .../blocks/pegmatite_relief_hoe.json | 6 +- .../blocks/pegmatite_relief_horizontal.json | 6 +- .../blocks/pegmatite_relief_i.json | 6 +- .../blocks/pegmatite_relief_left.json | 6 +- .../blocks/pegmatite_relief_pickaxe.json | 6 +- .../blocks/pegmatite_relief_plus.json | 6 +- .../blocks/pegmatite_relief_right.json | 6 +- .../blocks/pegmatite_relief_sword.json | 6 +- .../blocks/pegmatite_relief_vertical.json | 6 +- .../loot_tables/blocks/pegmatite_slab.json | 6 +- .../loot_tables/blocks/pegmatite_smooth.json | 6 +- .../blocks/pegmatite_smooth_brick.json | 6 +- .../pegmatite_smooth_brick_furnace.json | 6 +- .../blocks/pegmatite_smooth_brick_slab.json | 6 +- .../blocks/pegmatite_smooth_brick_stairs.json | 6 +- .../blocks/pegmatite_smooth_brick_wall.json | 6 +- .../blocks/pegmatite_smooth_furnace.json | 6 +- .../blocks/pegmatite_smooth_slab.json | 6 +- .../blocks/pegmatite_smooth_stairs.json | 6 +- .../blocks/pegmatite_smooth_wall.json | 6 +- .../loot_tables/blocks/pegmatite_stairs.json | 6 +- .../loot_tables/blocks/pegmatite_wall.json | 6 +- .../loot_tables/blocks/peridotite_brick.json | 6 +- .../blocks/peridotite_brick_furnace.json | 6 +- .../blocks/peridotite_brick_slab.json | 6 +- .../blocks/peridotite_brick_stairs.json | 6 +- .../blocks/peridotite_brick_wall.json | 6 +- .../blocks/peridotite_furnace.json | 6 +- .../blocks/peridotite_relief_axe.json | 6 +- .../blocks/peridotite_relief_blank.json | 6 +- .../blocks/peridotite_relief_cross.json | 6 +- .../blocks/peridotite_relief_hammer.json | 6 +- .../blocks/peridotite_relief_hoe.json | 6 +- .../blocks/peridotite_relief_horizontal.json | 6 +- .../blocks/peridotite_relief_i.json | 6 +- .../blocks/peridotite_relief_left.json | 6 +- .../blocks/peridotite_relief_pickaxe.json | 6 +- .../blocks/peridotite_relief_plus.json | 6 +- .../blocks/peridotite_relief_right.json | 6 +- .../blocks/peridotite_relief_sword.json | 6 +- .../blocks/peridotite_relief_vertical.json | 6 +- .../loot_tables/blocks/peridotite_slab.json | 6 +- .../loot_tables/blocks/peridotite_smooth.json | 6 +- .../blocks/peridotite_smooth_brick.json | 6 +- .../peridotite_smooth_brick_furnace.json | 6 +- .../blocks/peridotite_smooth_brick_slab.json | 6 +- .../peridotite_smooth_brick_stairs.json | 6 +- .../blocks/peridotite_smooth_brick_wall.json | 6 +- .../blocks/peridotite_smooth_furnace.json | 6 +- .../blocks/peridotite_smooth_slab.json | 6 +- .../blocks/peridotite_smooth_stairs.json | 6 +- .../blocks/peridotite_smooth_wall.json | 6 +- .../loot_tables/blocks/peridotite_stairs.json | 6 +- .../loot_tables/blocks/peridotite_wall.json | 6 +- .../loot_tables/blocks/phyllite_brick.json | 6 +- .../blocks/phyllite_brick_furnace.json | 6 +- .../blocks/phyllite_brick_slab.json | 6 +- .../blocks/phyllite_brick_stairs.json | 6 +- .../blocks/phyllite_brick_wall.json | 6 +- .../loot_tables/blocks/phyllite_furnace.json | 6 +- .../blocks/phyllite_relief_axe.json | 6 +- .../blocks/phyllite_relief_blank.json | 6 +- .../blocks/phyllite_relief_cross.json | 6 +- .../blocks/phyllite_relief_hammer.json | 6 +- .../blocks/phyllite_relief_hoe.json | 6 +- .../blocks/phyllite_relief_horizontal.json | 6 +- .../loot_tables/blocks/phyllite_relief_i.json | 6 +- .../blocks/phyllite_relief_left.json | 6 +- .../blocks/phyllite_relief_pickaxe.json | 6 +- .../blocks/phyllite_relief_plus.json | 6 +- .../blocks/phyllite_relief_right.json | 6 +- .../blocks/phyllite_relief_sword.json | 6 +- .../blocks/phyllite_relief_vertical.json | 6 +- .../loot_tables/blocks/phyllite_slab.json | 6 +- .../loot_tables/blocks/phyllite_smooth.json | 6 +- .../blocks/phyllite_smooth_brick.json | 6 +- .../blocks/phyllite_smooth_brick_furnace.json | 6 +- .../blocks/phyllite_smooth_brick_slab.json | 6 +- .../blocks/phyllite_smooth_brick_stairs.json | 6 +- .../blocks/phyllite_smooth_brick_wall.json | 6 +- .../blocks/phyllite_smooth_furnace.json | 6 +- .../blocks/phyllite_smooth_slab.json | 6 +- .../blocks/phyllite_smooth_stairs.json | 6 +- .../blocks/phyllite_smooth_wall.json | 6 +- .../loot_tables/blocks/phyllite_stairs.json | 6 +- .../loot_tables/blocks/phyllite_wall.json | 6 +- .../loot_tables/blocks/quartzite_brick.json | 6 +- .../blocks/quartzite_brick_furnace.json | 6 +- .../blocks/quartzite_brick_slab.json | 6 +- .../blocks/quartzite_brick_stairs.json | 6 +- .../blocks/quartzite_brick_wall.json | 6 +- .../loot_tables/blocks/quartzite_furnace.json | 6 +- .../blocks/quartzite_relief_axe.json | 6 +- .../blocks/quartzite_relief_blank.json | 6 +- .../blocks/quartzite_relief_cross.json | 6 +- .../blocks/quartzite_relief_hammer.json | 6 +- .../blocks/quartzite_relief_hoe.json | 6 +- .../blocks/quartzite_relief_horizontal.json | 6 +- .../blocks/quartzite_relief_i.json | 6 +- .../blocks/quartzite_relief_left.json | 6 +- .../blocks/quartzite_relief_pickaxe.json | 6 +- .../blocks/quartzite_relief_plus.json | 6 +- .../blocks/quartzite_relief_right.json | 6 +- .../blocks/quartzite_relief_sword.json | 6 +- .../blocks/quartzite_relief_vertical.json | 6 +- .../loot_tables/blocks/quartzite_slab.json | 6 +- .../loot_tables/blocks/quartzite_smooth.json | 6 +- .../blocks/quartzite_smooth_brick.json | 6 +- .../quartzite_smooth_brick_furnace.json | 6 +- .../blocks/quartzite_smooth_brick_slab.json | 6 +- .../blocks/quartzite_smooth_brick_stairs.json | 6 +- .../blocks/quartzite_smooth_brick_wall.json | 6 +- .../blocks/quartzite_smooth_furnace.json | 6 +- .../blocks/quartzite_smooth_slab.json | 6 +- .../blocks/quartzite_smooth_stairs.json | 6 +- .../blocks/quartzite_smooth_wall.json | 6 +- .../loot_tables/blocks/quartzite_stairs.json | 6 +- .../loot_tables/blocks/quartzite_wall.json | 6 +- .../loot_tables/blocks/rhyolite_brick.json | 6 +- .../blocks/rhyolite_brick_furnace.json | 6 +- .../blocks/rhyolite_brick_slab.json | 6 +- .../blocks/rhyolite_brick_stairs.json | 6 +- .../blocks/rhyolite_brick_wall.json | 6 +- .../loot_tables/blocks/rhyolite_furnace.json | 6 +- .../blocks/rhyolite_relief_axe.json | 6 +- .../blocks/rhyolite_relief_blank.json | 6 +- .../blocks/rhyolite_relief_cross.json | 6 +- .../blocks/rhyolite_relief_hammer.json | 6 +- .../blocks/rhyolite_relief_hoe.json | 6 +- .../blocks/rhyolite_relief_horizontal.json | 6 +- .../loot_tables/blocks/rhyolite_relief_i.json | 6 +- .../blocks/rhyolite_relief_left.json | 6 +- .../blocks/rhyolite_relief_pickaxe.json | 6 +- .../blocks/rhyolite_relief_plus.json | 6 +- .../blocks/rhyolite_relief_right.json | 6 +- .../blocks/rhyolite_relief_sword.json | 6 +- .../blocks/rhyolite_relief_vertical.json | 6 +- .../loot_tables/blocks/rhyolite_slab.json | 6 +- .../loot_tables/blocks/rhyolite_smooth.json | 6 +- .../blocks/rhyolite_smooth_brick.json | 6 +- .../blocks/rhyolite_smooth_brick_furnace.json | 6 +- .../blocks/rhyolite_smooth_brick_slab.json | 6 +- .../blocks/rhyolite_smooth_brick_stairs.json | 6 +- .../blocks/rhyolite_smooth_brick_wall.json | 6 +- .../blocks/rhyolite_smooth_furnace.json | 6 +- .../blocks/rhyolite_smooth_slab.json | 6 +- .../blocks/rhyolite_smooth_stairs.json | 6 +- .../blocks/rhyolite_smooth_wall.json | 6 +- .../loot_tables/blocks/rhyolite_stairs.json | 6 +- .../loot_tables/blocks/rhyolite_wall.json | 6 +- .../loot_tables/blocks/rock_salt_brick.json | 6 +- .../blocks/rock_salt_brick_furnace.json | 6 +- .../blocks/rock_salt_brick_slab.json | 6 +- .../blocks/rock_salt_brick_stairs.json | 6 +- .../blocks/rock_salt_brick_wall.json | 6 +- .../loot_tables/blocks/rock_salt_furnace.json | 6 +- .../blocks/rock_salt_relief_axe.json | 6 +- .../blocks/rock_salt_relief_blank.json | 6 +- .../blocks/rock_salt_relief_cross.json | 6 +- .../blocks/rock_salt_relief_hammer.json | 6 +- .../blocks/rock_salt_relief_hoe.json | 6 +- .../blocks/rock_salt_relief_horizontal.json | 6 +- .../blocks/rock_salt_relief_i.json | 6 +- .../blocks/rock_salt_relief_left.json | 6 +- .../blocks/rock_salt_relief_pickaxe.json | 6 +- .../blocks/rock_salt_relief_plus.json | 6 +- .../blocks/rock_salt_relief_right.json | 6 +- .../blocks/rock_salt_relief_sword.json | 6 +- .../blocks/rock_salt_relief_vertical.json | 6 +- .../loot_tables/blocks/rock_salt_slab.json | 6 +- .../loot_tables/blocks/rock_salt_smooth.json | 6 +- .../blocks/rock_salt_smooth_brick.json | 6 +- .../rock_salt_smooth_brick_furnace.json | 6 +- .../blocks/rock_salt_smooth_brick_slab.json | 6 +- .../blocks/rock_salt_smooth_brick_stairs.json | 6 +- .../blocks/rock_salt_smooth_brick_wall.json | 6 +- .../blocks/rock_salt_smooth_furnace.json | 6 +- .../blocks/rock_salt_smooth_slab.json | 6 +- .../blocks/rock_salt_smooth_stairs.json | 6 +- .../blocks/rock_salt_smooth_wall.json | 6 +- .../loot_tables/blocks/rock_salt_stairs.json | 6 +- .../loot_tables/blocks/rock_salt_wall.json | 6 +- .../loot_tables/blocks/schist_brick.json | 6 +- .../blocks/schist_brick_furnace.json | 6 +- .../loot_tables/blocks/schist_brick_slab.json | 6 +- .../blocks/schist_brick_stairs.json | 6 +- .../loot_tables/blocks/schist_brick_wall.json | 6 +- .../loot_tables/blocks/schist_furnace.json | 6 +- .../loot_tables/blocks/schist_relief_axe.json | 6 +- .../blocks/schist_relief_blank.json | 6 +- .../blocks/schist_relief_cross.json | 6 +- .../blocks/schist_relief_hammer.json | 6 +- .../loot_tables/blocks/schist_relief_hoe.json | 6 +- .../blocks/schist_relief_horizontal.json | 6 +- .../loot_tables/blocks/schist_relief_i.json | 6 +- .../blocks/schist_relief_left.json | 6 +- .../blocks/schist_relief_pickaxe.json | 6 +- .../blocks/schist_relief_plus.json | 6 +- .../blocks/schist_relief_right.json | 6 +- .../blocks/schist_relief_sword.json | 6 +- .../blocks/schist_relief_vertical.json | 6 +- .../loot_tables/blocks/schist_slab.json | 6 +- .../loot_tables/blocks/schist_smooth.json | 6 +- .../blocks/schist_smooth_brick.json | 6 +- .../blocks/schist_smooth_brick_furnace.json | 6 +- .../blocks/schist_smooth_brick_slab.json | 6 +- .../blocks/schist_smooth_brick_stairs.json | 6 +- .../blocks/schist_smooth_brick_wall.json | 6 +- .../blocks/schist_smooth_furnace.json | 6 +- .../blocks/schist_smooth_slab.json | 6 +- .../blocks/schist_smooth_stairs.json | 6 +- .../blocks/schist_smooth_wall.json | 6 +- .../loot_tables/blocks/schist_stairs.json | 6 +- .../loot_tables/blocks/schist_wall.json | 6 +- .../loot_tables/blocks/scoria_brick.json | 6 +- .../blocks/scoria_brick_furnace.json | 6 +- .../loot_tables/blocks/scoria_brick_slab.json | 6 +- .../blocks/scoria_brick_stairs.json | 6 +- .../loot_tables/blocks/scoria_brick_wall.json | 6 +- .../loot_tables/blocks/scoria_furnace.json | 6 +- .../loot_tables/blocks/scoria_relief_axe.json | 6 +- .../blocks/scoria_relief_blank.json | 6 +- .../blocks/scoria_relief_cross.json | 6 +- .../blocks/scoria_relief_hammer.json | 6 +- .../loot_tables/blocks/scoria_relief_hoe.json | 6 +- .../blocks/scoria_relief_horizontal.json | 6 +- .../loot_tables/blocks/scoria_relief_i.json | 6 +- .../blocks/scoria_relief_left.json | 6 +- .../blocks/scoria_relief_pickaxe.json | 6 +- .../blocks/scoria_relief_plus.json | 6 +- .../blocks/scoria_relief_right.json | 6 +- .../blocks/scoria_relief_sword.json | 6 +- .../blocks/scoria_relief_vertical.json | 6 +- .../loot_tables/blocks/scoria_slab.json | 6 +- .../loot_tables/blocks/scoria_smooth.json | 6 +- .../blocks/scoria_smooth_brick.json | 6 +- .../blocks/scoria_smooth_brick_furnace.json | 6 +- .../blocks/scoria_smooth_brick_slab.json | 6 +- .../blocks/scoria_smooth_brick_stairs.json | 6 +- .../blocks/scoria_smooth_brick_wall.json | 6 +- .../blocks/scoria_smooth_furnace.json | 6 +- .../blocks/scoria_smooth_slab.json | 6 +- .../blocks/scoria_smooth_stairs.json | 6 +- .../blocks/scoria_smooth_wall.json | 6 +- .../loot_tables/blocks/scoria_stairs.json | 6 +- .../loot_tables/blocks/scoria_wall.json | 6 +- .../loot_tables/blocks/shale_brick.json | 6 +- .../blocks/shale_brick_furnace.json | 6 +- .../loot_tables/blocks/shale_brick_slab.json | 6 +- .../blocks/shale_brick_stairs.json | 6 +- .../loot_tables/blocks/shale_brick_wall.json | 6 +- .../loot_tables/blocks/shale_furnace.json | 6 +- .../loot_tables/blocks/shale_relief_axe.json | 6 +- .../blocks/shale_relief_blank.json | 6 +- .../blocks/shale_relief_cross.json | 6 +- .../blocks/shale_relief_hammer.json | 6 +- .../loot_tables/blocks/shale_relief_hoe.json | 6 +- .../blocks/shale_relief_horizontal.json | 6 +- .../loot_tables/blocks/shale_relief_i.json | 6 +- .../loot_tables/blocks/shale_relief_left.json | 6 +- .../blocks/shale_relief_pickaxe.json | 6 +- .../loot_tables/blocks/shale_relief_plus.json | 6 +- .../blocks/shale_relief_right.json | 6 +- .../blocks/shale_relief_sword.json | 6 +- .../blocks/shale_relief_vertical.json | 6 +- .../loot_tables/blocks/shale_slab.json | 6 +- .../loot_tables/blocks/shale_smooth.json | 6 +- .../blocks/shale_smooth_brick.json | 6 +- .../blocks/shale_smooth_brick_furnace.json | 6 +- .../blocks/shale_smooth_brick_slab.json | 6 +- .../blocks/shale_smooth_brick_stairs.json | 6 +- .../blocks/shale_smooth_brick_wall.json | 6 +- .../blocks/shale_smooth_furnace.json | 6 +- .../loot_tables/blocks/shale_smooth_slab.json | 6 +- .../blocks/shale_smooth_stairs.json | 6 +- .../loot_tables/blocks/shale_smooth_wall.json | 6 +- .../loot_tables/blocks/shale_stairs.json | 6 +- .../loot_tables/blocks/shale_wall.json | 6 +- .../loot_tables/blocks/siltstone_brick.json | 6 +- .../blocks/siltstone_brick_furnace.json | 6 +- .../blocks/siltstone_brick_slab.json | 6 +- .../blocks/siltstone_brick_stairs.json | 6 +- .../blocks/siltstone_brick_wall.json | 6 +- .../loot_tables/blocks/siltstone_furnace.json | 6 +- .../blocks/siltstone_relief_axe.json | 6 +- .../blocks/siltstone_relief_blank.json | 6 +- .../blocks/siltstone_relief_cross.json | 6 +- .../blocks/siltstone_relief_hammer.json | 6 +- .../blocks/siltstone_relief_hoe.json | 6 +- .../blocks/siltstone_relief_horizontal.json | 6 +- .../blocks/siltstone_relief_i.json | 6 +- .../blocks/siltstone_relief_left.json | 6 +- .../blocks/siltstone_relief_pickaxe.json | 6 +- .../blocks/siltstone_relief_plus.json | 6 +- .../blocks/siltstone_relief_right.json | 6 +- .../blocks/siltstone_relief_sword.json | 6 +- .../blocks/siltstone_relief_vertical.json | 6 +- .../loot_tables/blocks/siltstone_slab.json | 6 +- .../loot_tables/blocks/siltstone_smooth.json | 6 +- .../blocks/siltstone_smooth_brick.json | 6 +- .../siltstone_smooth_brick_furnace.json | 6 +- .../blocks/siltstone_smooth_brick_slab.json | 6 +- .../blocks/siltstone_smooth_brick_stairs.json | 6 +- .../blocks/siltstone_smooth_brick_wall.json | 6 +- .../blocks/siltstone_smooth_furnace.json | 6 +- .../blocks/siltstone_smooth_slab.json | 6 +- .../blocks/siltstone_smooth_stairs.json | 6 +- .../blocks/siltstone_smooth_wall.json | 6 +- .../loot_tables/blocks/siltstone_stairs.json | 6 +- .../loot_tables/blocks/siltstone_wall.json | 6 +- .../loot_tables/blocks/slate_brick.json | 6 +- .../blocks/slate_brick_furnace.json | 6 +- .../loot_tables/blocks/slate_brick_slab.json | 6 +- .../blocks/slate_brick_stairs.json | 6 +- .../loot_tables/blocks/slate_brick_wall.json | 6 +- .../loot_tables/blocks/slate_furnace.json | 6 +- .../loot_tables/blocks/slate_relief_axe.json | 6 +- .../blocks/slate_relief_blank.json | 6 +- .../blocks/slate_relief_cross.json | 6 +- .../blocks/slate_relief_hammer.json | 6 +- .../loot_tables/blocks/slate_relief_hoe.json | 6 +- .../blocks/slate_relief_horizontal.json | 6 +- .../loot_tables/blocks/slate_relief_i.json | 6 +- .../loot_tables/blocks/slate_relief_left.json | 6 +- .../blocks/slate_relief_pickaxe.json | 6 +- .../loot_tables/blocks/slate_relief_plus.json | 6 +- .../blocks/slate_relief_right.json | 6 +- .../blocks/slate_relief_sword.json | 6 +- .../blocks/slate_relief_vertical.json | 6 +- .../loot_tables/blocks/slate_slab.json | 6 +- .../loot_tables/blocks/slate_smooth.json | 6 +- .../blocks/slate_smooth_brick.json | 6 +- .../blocks/slate_smooth_brick_furnace.json | 6 +- .../blocks/slate_smooth_brick_slab.json | 6 +- .../blocks/slate_smooth_brick_stairs.json | 6 +- .../blocks/slate_smooth_brick_wall.json | 6 +- .../blocks/slate_smooth_furnace.json | 6 +- .../loot_tables/blocks/slate_smooth_slab.json | 6 +- .../blocks/slate_smooth_stairs.json | 6 +- .../loot_tables/blocks/slate_smooth_wall.json | 6 +- .../loot_tables/blocks/slate_stairs.json | 6 +- .../loot_tables/blocks/slate_wall.json | 6 +- .../loot_tables/blocks/tuff_brick.json | 6 +- .../blocks/tuff_brick_furnace.json | 6 +- .../loot_tables/blocks/tuff_brick_slab.json | 6 +- .../loot_tables/blocks/tuff_brick_stairs.json | 6 +- .../loot_tables/blocks/tuff_brick_wall.json | 6 +- .../loot_tables/blocks/tuff_furnace.json | 6 +- .../loot_tables/blocks/tuff_relief_axe.json | 6 +- .../loot_tables/blocks/tuff_relief_blank.json | 6 +- .../loot_tables/blocks/tuff_relief_cross.json | 6 +- .../blocks/tuff_relief_hammer.json | 6 +- .../loot_tables/blocks/tuff_relief_hoe.json | 6 +- .../blocks/tuff_relief_horizontal.json | 6 +- .../loot_tables/blocks/tuff_relief_i.json | 6 +- .../loot_tables/blocks/tuff_relief_left.json | 6 +- .../blocks/tuff_relief_pickaxe.json | 6 +- .../loot_tables/blocks/tuff_relief_plus.json | 6 +- .../loot_tables/blocks/tuff_relief_right.json | 6 +- .../loot_tables/blocks/tuff_relief_sword.json | 6 +- .../blocks/tuff_relief_vertical.json | 6 +- .../loot_tables/blocks/tuff_slab.json | 6 +- .../loot_tables/blocks/tuff_smooth.json | 6 +- .../loot_tables/blocks/tuff_smooth_brick.json | 6 +- .../blocks/tuff_smooth_brick_furnace.json | 6 +- .../blocks/tuff_smooth_brick_slab.json | 6 +- .../blocks/tuff_smooth_brick_stairs.json | 6 +- .../blocks/tuff_smooth_brick_wall.json | 6 +- .../blocks/tuff_smooth_furnace.json | 6 +- .../loot_tables/blocks/tuff_smooth_slab.json | 6 +- .../blocks/tuff_smooth_stairs.json | 6 +- .../loot_tables/blocks/tuff_smooth_wall.json | 6 +- .../loot_tables/blocks/tuff_stairs.json | 6 +- .../loot_tables/blocks/tuff_wall.json | 6 +- .../tags/blocks/dripstone_base_stones.json | 7 + .../tags/blocks/horn_breaking_rocks.json | 35 + .../mineralogy/tags/blocks/raw_stones.json | 41 + .../mineralogy/tags/items/raw_stones.json | 41 + .../tags/items/slabs/amphibolite.json | 11 +- .../tags/items/slabs/amphibolite/brick.json | 11 +- .../tags/items/slabs/amphibolite/smooth.json | 11 +- .../items/slabs/amphibolite/smooth_brick.json | 11 +- .../mineralogy/tags/items/slabs/andesite.json | 13 +- .../tags/items/slabs/andesite/brick.json | 11 +- .../tags/items/slabs/andesite/smooth.json | 13 +- .../items/slabs/andesite/smooth_brick.json | 11 +- .../mineralogy/tags/items/slabs/basalt.json | 11 +- .../tags/items/slabs/basalt/brick.json | 11 +- .../tags/items/slabs/basalt/smooth.json | 11 +- .../tags/items/slabs/basalt/smooth_brick.json | 11 +- .../tags/items/slabs/basaltic_glass.json | 11 +- .../items/slabs/basaltic_glass/brick.json | 11 +- .../items/slabs/basaltic_glass/smooth.json | 11 +- .../slabs/basaltic_glass/smooth_brick.json | 11 +- .../tags/items/slabs/conglomerate.json | 11 +- .../tags/items/slabs/conglomerate/brick.json | 11 +- .../tags/items/slabs/conglomerate/smooth.json | 11 +- .../slabs/conglomerate/smooth_brick.json | 11 +- .../mineralogy/tags/items/slabs/diabase.json | 11 +- .../tags/items/slabs/diabase/brick.json | 11 +- .../tags/items/slabs/diabase/smooth.json | 11 +- .../items/slabs/diabase/smooth_brick.json | 11 +- .../mineralogy/tags/items/slabs/diorite.json | 13 +- .../tags/items/slabs/diorite/brick.json | 11 +- .../tags/items/slabs/diorite/smooth.json | 13 +- .../items/slabs/diorite/smooth_brick.json | 11 +- .../mineralogy/tags/items/slabs/dolomite.json | 11 +- .../tags/items/slabs/dolomite/brick.json | 11 +- .../tags/items/slabs/dolomite/smooth.json | 11 +- .../items/slabs/dolomite/smooth_brick.json | 11 +- .../mineralogy/tags/items/slabs/gabbro.json | 11 +- .../tags/items/slabs/gabbro/brick.json | 11 +- .../tags/items/slabs/gabbro/smooth.json | 11 +- .../tags/items/slabs/gabbro/smooth_brick.json | 11 +- .../mineralogy/tags/items/slabs/gneiss.json | 11 +- .../tags/items/slabs/gneiss/brick.json | 11 +- .../tags/items/slabs/gneiss/smooth.json | 11 +- .../tags/items/slabs/gneiss/smooth_brick.json | 11 +- .../mineralogy/tags/items/slabs/granite.json | 13 +- .../tags/items/slabs/granite/brick.json | 11 +- .../tags/items/slabs/granite/smooth.json | 13 +- .../items/slabs/granite/smooth_brick.json | 11 +- .../mineralogy/tags/items/slabs/hornfels.json | 11 +- .../tags/items/slabs/hornfels/brick.json | 11 +- .../tags/items/slabs/hornfels/smooth.json | 11 +- .../items/slabs/hornfels/smooth_brick.json | 11 +- .../tags/items/slabs/limestone.json | 11 +- .../tags/items/slabs/limestone/brick.json | 11 +- .../tags/items/slabs/limestone/smooth.json | 11 +- .../items/slabs/limestone/smooth_brick.json | 11 +- .../mineralogy/tags/items/slabs/marble.json | 11 +- .../tags/items/slabs/marble/brick.json | 11 +- .../tags/items/slabs/marble/smooth.json | 11 +- .../tags/items/slabs/marble/smooth_brick.json | 11 +- .../tags/items/slabs/novaculite.json | 11 +- .../tags/items/slabs/novaculite/brick.json | 11 +- .../tags/items/slabs/novaculite/smooth.json | 11 +- .../items/slabs/novaculite/smooth_brick.json | 11 +- .../tags/items/slabs/pegmatite.json | 11 +- .../tags/items/slabs/pegmatite/brick.json | 11 +- .../tags/items/slabs/pegmatite/smooth.json | 11 +- .../items/slabs/pegmatite/smooth_brick.json | 11 +- .../tags/items/slabs/peridotite.json | 11 +- .../tags/items/slabs/peridotite/brick.json | 11 +- .../tags/items/slabs/peridotite/smooth.json | 11 +- .../items/slabs/peridotite/smooth_brick.json | 11 +- .../mineralogy/tags/items/slabs/phyllite.json | 11 +- .../tags/items/slabs/phyllite/brick.json | 11 +- .../tags/items/slabs/phyllite/smooth.json | 11 +- .../items/slabs/phyllite/smooth_brick.json | 11 +- .../tags/items/slabs/quartzite.json | 11 +- .../tags/items/slabs/quartzite/brick.json | 11 +- .../tags/items/slabs/quartzite/smooth.json | 11 +- .../items/slabs/quartzite/smooth_brick.json | 11 +- .../mineralogy/tags/items/slabs/rhyolite.json | 11 +- .../tags/items/slabs/rhyolite/brick.json | 11 +- .../tags/items/slabs/rhyolite/smooth.json | 11 +- .../items/slabs/rhyolite/smooth_brick.json | 11 +- .../tags/items/slabs/rock_salt.json | 11 +- .../tags/items/slabs/rock_salt/brick.json | 11 +- .../tags/items/slabs/rock_salt/smooth.json | 11 +- .../items/slabs/rock_salt/smooth_brick.json | 11 +- .../mineralogy/tags/items/slabs/schist.json | 11 +- .../tags/items/slabs/schist/brick.json | 11 +- .../tags/items/slabs/schist/smooth.json | 11 +- .../tags/items/slabs/schist/smooth_brick.json | 11 +- .../mineralogy/tags/items/slabs/scoria.json | 11 +- .../tags/items/slabs/scoria/brick.json | 11 +- .../tags/items/slabs/scoria/smooth.json | 11 +- .../tags/items/slabs/scoria/smooth_brick.json | 11 +- .../mineralogy/tags/items/slabs/shale.json | 11 +- .../tags/items/slabs/shale/brick.json | 11 +- .../tags/items/slabs/shale/smooth.json | 11 +- .../tags/items/slabs/shale/smooth_brick.json | 11 +- .../tags/items/slabs/siltstone.json | 11 +- .../tags/items/slabs/siltstone/brick.json | 11 +- .../tags/items/slabs/siltstone/smooth.json | 11 +- .../items/slabs/siltstone/smooth_brick.json | 11 +- .../mineralogy/tags/items/slabs/slate.json | 11 +- .../tags/items/slabs/slate/brick.json | 11 +- .../tags/items/slabs/slate/smooth.json | 11 +- .../tags/items/slabs/slate/smooth_brick.json | 11 +- .../mineralogy/tags/items/slabs/tuff.json | 11 +- .../tags/items/slabs/tuff/brick.json | 11 +- .../tags/items/slabs/tuff/smooth.json | 11 +- .../tags/items/slabs/tuff/smooth_brick.json | 11 +- .../tags/items/stones/amphibolite/brick.json | 11 +- .../tags/items/stones/amphibolite/smooth.json | 11 +- .../stones/amphibolite/smooth_brick.json | 11 +- .../tags/items/stones/andesite/brick.json | 11 +- .../tags/items/stones/andesite/smooth.json | 13 +- .../items/stones/andesite/smooth_brick.json | 11 +- .../tags/items/stones/basalt/brick.json | 11 +- .../tags/items/stones/basalt/smooth.json | 15 +- .../items/stones/basalt/smooth_brick.json | 11 +- .../items/stones/basaltic_glass/brick.json | 11 +- .../items/stones/basaltic_glass/smooth.json | 11 +- .../stones/basaltic_glass/smooth_brick.json | 11 +- .../tags/items/stones/conglomerate/brick.json | 11 +- .../items/stones/conglomerate/smooth.json | 11 +- .../stones/conglomerate/smooth_brick.json | 11 +- .../tags/items/stones/diabase/brick.json | 11 +- .../tags/items/stones/diabase/smooth.json | 11 +- .../items/stones/diabase/smooth_brick.json | 11 +- .../tags/items/stones/diorite/brick.json | 11 +- .../tags/items/stones/diorite/smooth.json | 13 +- .../items/stones/diorite/smooth_brick.json | 11 +- .../tags/items/stones/dolomite/brick.json | 11 +- .../tags/items/stones/dolomite/smooth.json | 11 +- .../items/stones/dolomite/smooth_brick.json | 11 +- .../tags/items/stones/gabbro/brick.json | 11 +- .../tags/items/stones/gabbro/smooth.json | 11 +- .../items/stones/gabbro/smooth_brick.json | 11 +- .../tags/items/stones/gneiss/brick.json | 11 +- .../tags/items/stones/gneiss/smooth.json | 11 +- .../items/stones/gneiss/smooth_brick.json | 11 +- .../tags/items/stones/granite/brick.json | 11 +- .../tags/items/stones/granite/smooth.json | 13 +- .../items/stones/granite/smooth_brick.json | 11 +- .../tags/items/stones/hornfels/brick.json | 11 +- .../tags/items/stones/hornfels/smooth.json | 11 +- .../items/stones/hornfels/smooth_brick.json | 11 +- .../tags/items/stones/limestone/brick.json | 11 +- .../tags/items/stones/limestone/smooth.json | 11 +- .../items/stones/limestone/smooth_brick.json | 11 +- .../tags/items/stones/marble/brick.json | 11 +- .../tags/items/stones/marble/smooth.json | 11 +- .../items/stones/marble/smooth_brick.json | 11 +- .../tags/items/stones/novaculite/brick.json | 11 +- .../tags/items/stones/novaculite/smooth.json | 11 +- .../items/stones/novaculite/smooth_brick.json | 11 +- .../tags/items/stones/pegmatite/brick.json | 11 +- .../tags/items/stones/pegmatite/smooth.json | 11 +- .../items/stones/pegmatite/smooth_brick.json | 11 +- .../tags/items/stones/peridotite/brick.json | 11 +- .../tags/items/stones/peridotite/smooth.json | 11 +- .../items/stones/peridotite/smooth_brick.json | 11 +- .../tags/items/stones/phyllite/brick.json | 11 +- .../tags/items/stones/phyllite/smooth.json | 11 +- .../items/stones/phyllite/smooth_brick.json | 11 +- .../tags/items/stones/quartzite/brick.json | 11 +- .../tags/items/stones/quartzite/smooth.json | 11 +- .../items/stones/quartzite/smooth_brick.json | 11 +- .../tags/items/stones/rhyolite/brick.json | 11 +- .../tags/items/stones/rhyolite/smooth.json | 11 +- .../items/stones/rhyolite/smooth_brick.json | 11 +- .../tags/items/stones/rock_salt/brick.json | 11 +- .../tags/items/stones/rock_salt/smooth.json | 11 +- .../items/stones/rock_salt/smooth_brick.json | 11 +- .../tags/items/stones/schist/brick.json | 11 +- .../tags/items/stones/schist/smooth.json | 11 +- .../items/stones/schist/smooth_brick.json | 11 +- .../tags/items/stones/scoria/brick.json | 11 +- .../tags/items/stones/scoria/smooth.json | 11 +- .../items/stones/scoria/smooth_brick.json | 11 +- .../tags/items/stones/shale/brick.json | 11 +- .../tags/items/stones/shale/smooth.json | 11 +- .../tags/items/stones/shale/smooth_brick.json | 11 +- .../tags/items/stones/siltstone/brick.json | 11 +- .../tags/items/stones/siltstone/smooth.json | 11 +- .../items/stones/siltstone/smooth_brick.json | 11 +- .../tags/items/stones/slate/brick.json | 11 +- .../tags/items/stones/slate/smooth.json | 11 +- .../tags/items/stones/slate/smooth_brick.json | 11 +- .../tags/items/stones/tuff/brick.json | 11 +- .../tags/items/stones/tuff/smooth.json | 11 +- .../tags/items/stones/tuff/smooth_brick.json | 11 +- .../fixture/RecipeIntegrationAssertions.java | 456 +++ .../fixture/RecipeIntegrationProbe.java | 451 +-- .../TerrainCompatibilityProbe.java | 264 +- .../data/forge/tags/blocks/cobblestone.json | 1 + .../forge/tags/blocks/cobblestone/normal.json | 1 + .../data/forge/tags/items/cobblestone.json | 1 + .../forge/tags/items/cobblestone/normal.json | 1 + .../mineralogy/DripstoneHookContractTest.java | 25 + .../mc/mineralogy/ResourceContractTest.java | 4 +- .../TagCompatibilityContractTest.java | 119 + .../TerrainCompatibilityContractTest.java | 23 +- .../resources/tag-compatibility-contract.json | 2860 +++++++++++++++++ 1101 files changed, 12523 insertions(+), 2341 deletions(-) create mode 100644 scripts/guard-construction-loot.ps1 create mode 100644 src/main/java/zone/moddev/mc/mineralogy/compat/VanillaTerrainHooks.java create mode 100644 src/main/resources/coremods/mineralogy_terrain_compatibility.js create mode 100644 src/main/resources/data/forge/tags/blocks/cobblestone/normal.json create mode 100644 src/main/resources/data/forge/tags/blocks/ores.json create mode 100644 src/main/resources/data/forge/tags/blocks/stone.json create mode 100644 src/main/resources/data/forge/tags/blocks/storage_blocks.json create mode 100644 src/main/resources/data/forge/tags/items/cobblestone/normal.json create mode 100644 src/main/resources/data/forge/tags/items/ores.json create mode 100644 src/main/resources/data/forge/tags/items/stone.json create mode 100644 src/main/resources/data/forge/tags/items/storage_blocks.json create mode 100644 src/main/resources/data/minecraft/tags/blocks/azalea_root_replaceable.json create mode 100644 src/main/resources/data/minecraft/tags/blocks/goats_spawnable_on.json create mode 100644 src/main/resources/data/minecraft/tags/blocks/slabs.json create mode 100644 src/main/resources/data/minecraft/tags/blocks/snaps_goat_horn.json create mode 100644 src/main/resources/data/minecraft/tags/blocks/stairs.json create mode 100644 src/main/resources/data/minecraft/tags/blocks/wall_post_override.json create mode 100644 src/main/resources/data/minecraft/tags/items/slabs.json create mode 100644 src/main/resources/data/minecraft/tags/items/stairs.json create mode 100644 src/main/resources/data/mineralogy/tags/blocks/dripstone_base_stones.json create mode 100644 src/main/resources/data/mineralogy/tags/blocks/horn_breaking_rocks.json create mode 100644 src/main/resources/data/mineralogy/tags/blocks/raw_stones.json create mode 100644 src/main/resources/data/mineralogy/tags/items/raw_stones.json create mode 100644 src/recipeIntegrationTest/java/zone/moddev/mc/mineralogy/fixture/RecipeIntegrationAssertions.java create mode 100644 src/terrainCompatibilityTest/resources/data/forge/tags/blocks/cobblestone.json create mode 100644 src/terrainCompatibilityTest/resources/data/forge/tags/blocks/cobblestone/normal.json create mode 100644 src/terrainCompatibilityTest/resources/data/forge/tags/items/cobblestone.json create mode 100644 src/terrainCompatibilityTest/resources/data/forge/tags/items/cobblestone/normal.json create mode 100644 src/test/java/zone/moddev/mc/mineralogy/DripstoneHookContractTest.java create mode 100644 src/test/java/zone/moddev/mc/mineralogy/TagCompatibilityContractTest.java create mode 100644 src/test/resources/tag-compatibility-contract.json diff --git a/CHANGELOG.txt b/CHANGELOG.txt index fdc37c2d8..dc9d46376 100644 --- a/CHANGELOG.txt +++ b/CHANGELOG.txt @@ -1,12 +1,18 @@ Mineralogy 6.1.4.120061 for Minecraft 1.20.6 -- Restored vanilla sculk catalyst conversion and dripstone/moss replacement on - 37 natural terrain identities, including native aliases and special rocks. -- Sculk works in existing worlds after updating; natural cave decoration - improves in newly generated chunks. No sulfur-cube tags on this target. -- Added deterministic tag, real-loader/reload, vanilla consumer, cave sample - and packaged-runtime validation. No recipes, IDs, configurations, provider, - OreSpawn engine, translations, or existing textures changed. +- Sculk can spread across natural Mineralogy terrain. Goats can spawn on it, + and the harder raw rocks can break their horns. These changes also work in + existing worlds; polished and crafted rocks are not natural terrain. +- Moss, dripstone, azalea roots and forest rocks recognise natural terrain in + newly generated chunks. Fixed two dripstone checks without changing general + base-stone tags or ore hosts. Bare rock is still not soil for growing trees. +- Single slabs, stairs and walls now join the matching vanilla classifications. + Raw rocks, ores and storage blocks join Forge's common tags. Normal cobblestone + follows the same option as the root tag, with chert and pumice always valid. +- Rock-salt lamps keep a wall post beneath them, like a vanilla torch. +- Optional construction references and loot pools load safely when those forms + are disabled. Recipes, IDs, configs, providers, migrations, textures and the + released OreSpawn dependency are unchanged. No sulfur cubes on this target. Mineralogy 6.1.2.120061 for Minecraft 1.20.6 diff --git a/README.md b/README.md index e75eaa6a5..a58b07ff6 100644 --- a/README.md +++ b/README.md @@ -14,11 +14,12 @@ This branch builds Mineralogy `6.1.4.120061` for Forge `50.2.0` and is built and tested against OreSpawn `4.0.16.120061`. Its declared compatibility range is OreSpawn `[4.0.6,5.0.0)`. Install both mods on clients and servers. -Version 6.1.4 restores vanilla sculk conversion and dripstone/moss replacement -on natural Mineralogy terrain. Sculk works in existing worlds after updating; -improved natural cave decoration appears in newly generated chunks. These -additive tags are independent of the cobblestone-equivalence option and exclude -crafted or shaped construction blocks. Sulfur cubes do not exist on this target. +Version 6.1.4 lets vanilla cave features and animals recognise natural +Mineralogy rock. Sculk can spread, goats can spawn, and harder raw rocks can +break goat horns in existing worlds. Moss, dripstone, roots and forest rocks +also recognise natural terrain when new chunks are generated. Crafted blocks +are kept separate, and none of this depends on cobblestone equivalence. +Sulfur cubes do not exist on this Minecraft version. ## Configuration and help diff --git a/docs/DEVELOPER_GUIDE.md b/docs/DEVELOPER_GUIDE.md index 0a735834f..c92095708 100644 --- a/docs/DEVELOPER_GUIDE.md +++ b/docs/DEVELOPER_GUIDE.md @@ -1,5 +1,24 @@ # Mineralogy Developer Guide +## Natural terrain interfaces + +The block and item `mineralogy:terrain_rocks` tags contain the 32 provider +outputs and five retained legacy aliases. Vanilla cave and goat tags refer to +the block interface. The horn whitelist is narrower, and `mineralogy:raw_stones` +excludes sandstone. Forge's stone, ore and storage tags keep their native names +on this target; later workstation and dyed-colour interfaces are not invented. + +Two exact-count JavaScript hooks redirect only the proven dripstone water-pocket +and large-column base-stone reads. Global base-stone, carver and ore-host tags +remain unchanged. Root replacement does not make bare rock tree soil. +Config-dependent construction members are optional. Forge 50 checks loading +conditions on loot pools, not whole tables, so each optional construction pool +has an item-existence guard without changing its enabled drops. + +Use the isolated tag generator and focused resource contracts when changing +these interfaces. The non-shipping native probe checks recursive inheritance, +actual consumers and reloads; the full audit index stays local. + ## Responsibility Split | Mineralogy owns | OreSpawn owns | diff --git a/docs/PLAYER_GUIDE.md b/docs/PLAYER_GUIDE.md index d5650afd9..88c534974 100644 --- a/docs/PLAYER_GUIDE.md +++ b/docs/PLAYER_GUIDE.md @@ -64,6 +64,21 @@ Mineralogy rock furnace is an upgrade recipe: surround an existing Minecraft furnace with eight matching Mineralogy slabs. Brick, polished, and polished-brick furnaces use the corresponding slab finish. +## Natural Rock Compatibility + +Sculk can spread onto natural Mineralogy rock, and goats can spawn on it. +Harder raw rocks can also break goat horns; rock salt, scoria, siltstone, +chalk, gypsum and pumice are excluded. Crafted and polished forms are not +treated as natural terrain. + +Moss, dripstone, azalea roots and forest rocks recognise the same natural +substrates. Updating does not regenerate existing caves: explore new chunks +to see natural decoration changes. Bare rock still cannot grow an azalea tree. +Rock-salt lamps keep the post of a straight wall, just as vanilla torches do. + +These rules work with cobblestone equivalence enabled or disabled. Sulfur cubes +and the newer bat substrate tag are not present in Minecraft 1.20.6. + ## Configuration And Servers `config/mineralogy-common.toml` controls Mineralogy content and recipe compatibility. diff --git a/docs/VERSIONS.md b/docs/VERSIONS.md index 1614e4d10..20d9a41d6 100644 --- a/docs/VERSIONS.md +++ b/docs/VERSIONS.md @@ -77,6 +77,9 @@ NeoForge 26.3 retains its existing 6.1.3 compatibility correction. | Minecraft | Forge candidate | NeoForge candidate | | --- | --- | --- | +| 1.16.5 | 6.1.4.116051 | Not in scope | +| 1.17.1 | 6.1.4.117011 | Not in scope | +| 1.18.2 | 6.1.4.118021 | Not in scope | | 1.19.4 | 6.1.4.119041 | Not in scope | | 1.20.1 | 6.1.4.120011 | Not in scope | | 1.20.6 | 6.1.4.120061 | 6.1.4.120062 | @@ -86,8 +89,11 @@ NeoForge 26.3 retains its existing 6.1.3 compatibility correction. | 26.2 | 6.1.4.2602001 | 6.1.4.2602002 | | 26.3 | 6.1.4.2603001 | 6.1.4.2603002 | -Forge 1.18.2's dripstone/moss correction is outstanding and outside this -campaign. Native-texture synchronization remains a separate campaign. +The revised campaign includes Forge 1.16.5–1.18.2 where each interface exists. +Minecraft 1.17 retains its native goat-spawning rule. Sulfur cubes on 26.2 and +26.3 consume only raw Mineralogy rocks, not polished or brick forms; vanilla's +own consumption rules are unchanged. Every revised local candidate needs +renewed manual acceptance. Native-texture synchronization remains separate. ## Major version diff --git a/gradle/terrain-compatibility-probe.gradle b/gradle/terrain-compatibility-probe.gradle index c6dc72659..c7bd10bdc 100644 --- a/gradle/terrain-compatibility-probe.gradle +++ b/gradle/terrain-compatibility-probe.gradle @@ -1,8 +1,8 @@ def probeClasses = layout.buildDirectory.dir('terrain-compatibility-fixture/classes') tasks.register('compileTerrainCompatibilityProbe', JavaCompile) { - dependsOn tasks.named('classes') + dependsOn tasks.named('classes'), tasks.named('compileRecipeIntegrationFixture') source fileTree('src/terrainCompatibilityTest/java') - classpath = files(sourceSets.main.output, sourceSets.main.compileClasspath) + classpath = files(sourceSets.main.output, sourceSets.main.compileClasspath, layout.buildDirectory.dir('recipe-integration-fixture/classes')) destinationDirectory = probeClasses javaCompiler = javaToolchains.compilerFor { languageVersion = JavaLanguageVersion.of(Integer.parseInt(project.java_version)) @@ -17,5 +17,7 @@ tasks.register('terrainCompatibilityProbeJar', Jar) { destinationDirectory = layout.buildDirectory.dir('terrain-compatibility-fixture') from probeClasses from 'src/terrainCompatibilityTest/resources' + from(layout.buildDirectory.dir('recipe-integration-fixture/classes')) { include 'zone/moddev/mc/mineralogy/fixture/RecipeIntegrationAssertions*.class' } + from('src/test/resources') { include 'tag-compatibility-contract.json' } } tasks.named('check') { dependsOn tasks.named('compileTerrainCompatibilityProbe') } diff --git a/gradle/verify-terrain-compatibility.gradle b/gradle/verify-terrain-compatibility.gradle index fff331aa1..a8b3808b2 100644 --- a/gradle/verify-terrain-compatibility.gradle +++ b/gradle/verify-terrain-compatibility.gradle @@ -14,6 +14,7 @@ tasks.register('verifyTerrainCompatibilityArtifacts') { def terrain = raw + ['andesite', 'basalt', 'diorite', 'granite', 'sandstone', 'tuff'].collect { "minecraft:$it".toString() } boolean singular = !(minecraft_version in ['1.19.4', '1.20.1', '1.20.6']) boolean cubes = minecraft_version in ['26.2', '26.3'] + boolean bats = minecraft_version in ['1.21.11', '26.1.2', '26.2', '26.3'] def block = singular ? 'block' : 'blocks' def item = singular ? 'item' : 'items' def inspect = { ZipFile zip, String path, Set expected, boolean optional -> @@ -34,34 +35,81 @@ tasks.register('verifyTerrainCompatibilityArtifacts') { } if (ids.size() != ids.toSet().size() || ids.toSet() != expected) throw new GradleException("Incorrect compatibility membership: $path") - if (optional && tag.values.count { it instanceof Map } != 81) - throw new GradleException('Sulfur cube construction forms must all be optional') } ['jar', 'sourcesJar'].each { taskName -> new ZipFile(tasks.named(taskName).get().archiveFile.get().asFile).withCloseable { zip -> + def hooksEntry = zip.getEntry('coremods/mineralogy_terrain_compatibility.js') + if (hooksEntry == null) throw new GradleException('Missing scoped dripstone transformers') + def hooks = zip.getInputStream(hooksEntry).getText('UTF-8') + if (!hooks.contains('if (hooks !== 1) throw new Error') || + !hooks.contains('DripstoneClusterFeature') || !hooks.contains('LargeDripstoneFeature$LargeDripstone')) + throw new GradleException('Dripstone transformer target/count contract drifted') inspect(zip, "mineralogy/tags/$block/terrain_rocks.json", terrain, false) inspect(zip, "mineralogy/tags/$item/terrain_rocks.json", terrain, false) ['sculk_replaceable', 'dripstone_replaceable_blocks', 'moss_replaceable'].each { name -> inspect(zip, "minecraft/tags/$block/${name}.json", ['#mineralogy:terrain_rocks'].toSet(), false) } if (cubes) { - def full = raw + ['_smooth', '_brick', '_smooth_brick'].collectMany { suffix -> families.collect { "mineralogy:$it$suffix".toString() } } + // Sulfur cubes are independently version-gated. + def full = raw full.each { id -> def name = id.substring('mineralogy:'.length()) if (zip.getEntry("assets/mineralogy/blockstates/${name}.json") == null || zip.getEntry("assets/mineralogy/models/item/${name}.json") == null) throw new GradleException("Nonexistent sulfur cube block/item: $id") } - inspect(zip, "mineralogy/tags/$item/sulfur_cube_stones.json", full, true) + inspect(zip, "mineralogy/tags/$item/sulfur_cube_stones.json", full, false) inspect(zip, "minecraft/tags/$item/sulfur_cube_archetype/slow_bouncy.json", ['#mineralogy:sulfur_cube_stones'].toSet(), false) } def forbiddenKind = singular ? 'blocks|items' : 'block|item' + if (bats) { + inspect(zip, "minecraft/tags/$block/bats_spawnable_on.json", ['#mineralogy:terrain_rocks'].toSet(), false) + } zip.entries().each { entry -> + if (entry.name.startsWith('data/mineralogy/loot_tables/blocks/') && entry.name.endsWith('.json')) { + def loot = new JsonSlurper().parseText(zip.getInputStream(entry).getText('UTF-8')) + loot.pools.each { pool -> pool.entries.each { drop -> + if (drop.type == 'minecraft:item' && drop.name ==~ 'mineralogy:(.+)(_smooth|_brick|_slab|_stairs|_wall|_furnace|_relief_.+)') { + if (loot.containsKey('forge:condition') || pool['forge:condition'] != [type: 'forge:item_exists', item: drop.name]) + throw new GradleException("Unguarded optional construction loot: ${entry.name}") + } + } } + } + if (entry.name.startsWith('data/') && entry.name.contains('/tags/') && entry.name.endsWith('.json')) { + def tag = new JsonSlurper().parseText(zip.getInputStream(entry).getText('UTF-8')) + if (tag.containsKey('optional')) throw new GradleException("Unsupported top-level optional: ${entry.name}") + def ids = tag.values.collect { value -> + if (value instanceof Map && (value.keySet() != ['id', 'required'].toSet() || value.required != false)) + throw new GradleException("Malformed optional entry: ${entry.name}") + def id = value instanceof Map ? value.id : value + if (!(id instanceof String) || !(id ==~ '#?[a-z0-9_.-]+:[a-z0-9_/.-]+')) + throw new GradleException("Malformed tag identity: ${entry.name}") + if (id ==~ 'mineralogy:(lit_)?(.+)(_smooth|_brick|_slab|_stairs|_wall|_furnace|_relief_.+)') { + if (!(value instanceof Map)) throw new GradleException("Required unregisterable construction member: ${entry.name}: $id") + } + id + } + if (ids.size() != ids.toSet().size()) throw new GradleException("Duplicate tag member: ${entry.name}") + } + if (entry.name.endsWith('/bats_spawnable_on.json') && + (!bats || entry.name != "data/minecraft/tags/$block/bats_spawnable_on.json")) + throw new GradleException("Wrong-era/non-block bat tag: ${entry.name}") + if (entry.name == "data/minecraft/tags/$block/base_stone_overworld.json") + throw new GradleException('Bat compatibility must not broaden the base terrain/worldgen tag') if (entry.name ==~ "data/.+/tags/($forbiddenKind)/.*(terrain_rocks|sulfur_cube).*" || (!cubes && entry.name.contains('sulfur_cube')) || entry.name.toLowerCase().contains('terraincompatibilityprobe') || entry.name.contains('compatprobe/') || entry.name.contains('terrainCompatibilityTest') || entry.name.contains('terrain-compatibility-fixture')) throw new GradleException("Forbidden compatibility resource/probe: ${entry.name}") } + def contract = new JsonSlurper().parse(file('src/test/resources/tag-compatibility-contract.json')) + if (contract.minecraft != minecraft_version) throw new GradleException('Tag contract targets the wrong Minecraft version') + contract.tags.each { path, values -> + def entry = zip.getEntry("data/$path") + if (entry == null) throw new GradleException("Missing audited tag $path") + def tag = new JsonSlurper().parseText(zip.getInputStream(entry).getText('UTF-8')) + if (tag.replace != false || tag.keySet() != ['replace', 'values'].toSet() || tag.values != values) + throw new GradleException("Tag contract changed in artifact: $path") + } } } } diff --git a/scripts/generate-recipes.ps1 b/scripts/generate-recipes.ps1 index c69567570..3ccb30229 100644 --- a/scripts/generate-recipes.ps1 +++ b/scripts/generate-recipes.ps1 @@ -921,7 +921,7 @@ function Write-TargetTags() { } $destination = Join-Path $itemTagRoot "$kind\$family$pathSuffix.json" New-Item -ItemType Directory -Force -Path (Split-Path -Parent $destination) | Out-Null - $values = @($item) + $values = if ($kind -eq 'slabs' -or $finish) { @([ordered]@{ id = $item; required = $false }) } else { @($item) } $values += @(NativeTagAliases $kind $family $finish) Write-Json $destination ([ordered]@{ replace = $false; values = $values }) } diff --git a/scripts/generate-terrain-compatibility.ps1 b/scripts/generate-terrain-compatibility.ps1 index 65250206d..686685eb4 100644 --- a/scripts/generate-terrain-compatibility.ps1 +++ b/scripts/generate-terrain-compatibility.ps1 @@ -1,38 +1,121 @@ -# Isolated resource generator: never regenerate recipes or existing family tags. +# Isolated tag generator. Recipe and provider data are never regenerated here. [CmdletBinding()] param([string]$ProjectRoot = (Split-Path $PSScriptRoot -Parent)) $ErrorActionPreference = 'Stop' $projectPath = (Resolve-Path -LiteralPath $ProjectRoot).Path $properties = Get-Content -LiteralPath (Join-Path $projectPath 'gradle.properties') $mc = ($properties | Where-Object { $_ -match '^minecraft_version=' }) -replace '^minecraft_version=', '' -$singular = $mc -notin @('1.19.4', '1.20.1', '1.20.6') +$singular = $mc -notin @('1.16.5', '1.17.1', '1.18.2', '1.19.4', '1.20.1', '1.20.6') $cubes = $mc -in @('26.2', '26.3') +$bats = $mc -in @('1.21.11', '26.1.2', '26.2', '26.3') $blockDir = if ($singular) { 'block' } else { 'blocks' } $itemDir = if ($singular) { 'item' } else { 'items' } $provider = Get-Content -Raw -LiteralPath (Join-Path $projectPath 'src/main/resources/data/mineralogy/orespawn/provider.json') | ConvertFrom-Json $outputs = @($provider.rocks.PSObject.Properties | ForEach-Object { $_.Value.block } | Sort-Object -Unique) $aliases = @($provider.profile_defaults.worldgen_aliases.PSObject.Properties | ForEach-Object { $_.Name }) $terrain = @(@($outputs) + @($aliases) | Sort-Object -Unique) -if ($outputs.Count -ne 32 -or $aliases.Count -ne 5 -or $terrain.Count -ne 37) { throw 'Unexpected provider terrain contract' } +if ($outputs.Count -ne 32 -or $terrain.Count -ne (32 + $aliases.Count)) { throw 'Unexpected provider terrain contract' } $families = @('andesite','basalt','diorite','granite','rhyolite','pegmatite','diabase','gabbro','peridotite','basaltic_glass','scoria','tuff','shale','conglomerate','dolomite','limestone','siltstone','marble','slate','schist','gneiss','phyllite','amphibolite','hornfels','quartzite','novaculite','rock_salt') $utf8 = [System.Text.UTF8Encoding]::new($false) +$contracts = [ordered]@{} function Write-Tag([string]$RelativePath, [object[]]$Values) { $destination = Join-Path $projectPath ('src/main/resources/data/' + $RelativePath) [System.IO.Directory]::CreateDirectory((Split-Path $destination -Parent)) | Out-Null $json = [ordered]@{ replace = $false; values = @($Values) } | ConvertTo-Json -Depth 8 [System.IO.File]::WriteAllText($destination, ($json -replace "`r`n", "`n") + "`n", $utf8) + $contracts[$RelativePath] = @($Values) } +function Optional([string]$Id) { [ordered]@{ id = $Id; required = $false } } Write-Tag "mineralogy/tags/$blockDir/terrain_rocks.json" $terrain Write-Tag "mineralogy/tags/$itemDir/terrain_rocks.json" $terrain -foreach ($tag in @('sculk_replaceable','dripstone_replaceable_blocks','moss_replaceable')) { +$naturalTags = @() +if ($mc -ne '1.16.5') { $naturalTags += @('dripstone_replaceable_blocks','moss_replaceable','azalea_root_replaceable') } +if ($mc -notin @('1.16.5','1.17.1','1.18.2')) { $naturalTags += 'sculk_replaceable' } +if ($mc -notin @('1.16.5','1.17.1')) { $naturalTags += 'goats_spawnable_on' } +if ($mc -in @('26.1.2','26.2','26.3')) { $naturalTags += 'forest_rock_can_place_on' } +foreach ($tag in $naturalTags) { Write-Tag "minecraft/tags/$blockDir/$tag.json" @('#mineralogy:terrain_rocks') } +if ($bats) { + Write-Tag "minecraft/tags/$blockDir/bats_spawnable_on.json" @('#mineralogy:terrain_rocks') +} if ($cubes) { $stones = @($families | ForEach-Object { "mineralogy:$_" }) + @('mineralogy:chalk','mineralogy:chert','mineralogy:gypsum','mineralogy:pumice') - foreach ($suffix in @('_smooth','_brick','_smooth_brick')) { - foreach ($family in $families) { $stones += [ordered]@{ id = "mineralogy:$family$suffix"; required = $false } } - } Write-Tag "mineralogy/tags/$itemDir/sulfur_cube_stones.json" $stones Write-Tag "minecraft/tags/$itemDir/sulfur_cube_archetype/slow_bouncy.json" @('#mineralogy:sulfur_cube_stones') } +if ($mc -notin @('1.16.5','1.17.1','1.18.2')) { + $hard = @($families | Where-Object { $_ -notin @('rock_salt','scoria','siltstone') } | ForEach-Object { "mineralogy:$_" }) + @('mineralogy:chert') + $hard += @($terrain | Where-Object { $_ -in @('minecraft:andesite','minecraft:basalt','minecraft:diorite','minecraft:granite','minecraft:tuff') }) + Write-Tag "mineralogy/tags/$blockDir/horn_breaking_rocks.json" @($hard | Sort-Object -Unique) + Write-Tag "minecraft/tags/$blockDir/snaps_goat_horn.json" @('#mineralogy:horn_breaking_rocks') +} +$rawStones = @($terrain | Where-Object { $_ -ne 'minecraft:sandstone' }) +foreach ($kind in @($blockDir,$itemDir)) { + Write-Tag "mineralogy/tags/$kind/raw_stones.json" $rawStones + foreach ($shape in @('slab','stairs','wall')) { + $forms = foreach ($family in $families) { foreach ($finish in @('','_smooth','_brick','_smooth_brick')) { Optional "mineralogy:$family${finish}_$shape" } } + $aggregate = if ($shape -eq 'slab') { 'slabs' } elseif ($shape -eq 'wall') { 'walls' } else { 'stairs' } + Write-Tag "minecraft/tags/$kind/$aggregate.json" $forms + } + $modernCommon = $mc -in @('1.21.1','1.21.11','26.1.2','26.2','26.3') -or ($properties -match '^neoforge_version=') + if ($modernCommon) { + Write-Tag "c/tags/$kind/stones.json" @('#mineralogy:raw_stones') + $furnaces = foreach ($family in $families) { foreach ($finish in @('','_smooth','_brick','_smooth_brick')) { + Optional "mineralogy:$family${finish}_furnace" + if ($kind -eq $blockDir) { Optional "mineralogy:lit_$family${finish}_furnace" } + } } + Write-Tag "c/tags/$kind/player_workstations/furnaces.json" $furnaces + $colors = @('white','orange','magenta','light_blue','yellow','lime','pink','gray','light_gray','cyan','purple','blue','brown','green','red','black') + foreach ($color in $colors) { + $legacyColor = if ($color -eq 'light_gray') { 'silver' } else { $color } + Write-Tag "c/tags/$kind/dyed/$color.json" @("mineralogy:drywall_$legacyColor") + } + Write-Tag "c/tags/$kind/dyed.json" @($colors | ForEach-Object { "#c:dyed/$_" }) + } + # Older Forge stone consumers remain supported where the loader defines them. + if ($mc -notin @('26.1.2','26.2','26.3') -and -not ($properties -match '^neoforge_version=')) { + Write-Tag "forge/tags/$kind/stone.json" @('#mineralogy:raw_stones') + } + $commonNamespace = if (Test-Path -LiteralPath (Join-Path $projectPath "src/main/resources/data/c/tags/$kind/ores")) { 'c' } else { 'forge' } + Write-Tag "$commonNamespace/tags/$kind/ores.json" @('nitrate','phosphorous','sulfur' | ForEach-Object { "#$commonNamespace`:ores/$_" }) + Write-Tag "$commonNamespace/tags/$kind/storage_blocks.json" @('chalk','gypsum','nitrate','phosphorous','rock_salt','sulfur' | ForEach-Object { "#$commonNamespace`:storage_blocks/$_" }) + if ($mc -notin @('1.16.5','1.17.1')) { + $normalNamespace = if ($modernCommon) { 'c' } else { 'forge' } + $normalPath = if ($modernCommon) { 'cobblestones/normal' } else { 'cobblestone/normal' } + Write-Tag "$normalNamespace/tags/$kind/$normalPath.json" @('mineralogy:chert','mineralogy:pumice') + } +} +if ($mc -eq '26.3') { + $lit = foreach ($family in $families) { foreach ($finish in @('','_smooth','_brick','_smooth_brick')) { Optional "mineralogy:lit_$family${finish}_furnace" } } + Write-Tag "minecraft/tags/$blockDir/cats_can_sit_on.json" $lit +} +if ($mc -ne '1.16.5') { + Write-Tag "mineralogy/tags/$blockDir/dripstone_base_stones.json" @('#minecraft:base_stone_overworld','#mineralogy:terrain_rocks') +} +# The native straight-wall control loses its post under our non-colliding lamp. +Write-Tag "minecraft/tags/$blockDir/wall_post_override.json" @('mineralogy:rocksaltlamp') +# Registration switches can remove any construction form. Keep every existing +# family and compatibility tag loadable, without changing its member identities. +foreach ($file in Get-ChildItem -LiteralPath (Join-Path $projectPath 'src/main/resources/data') -Recurse -Filter '*.json' | Where-Object { $_.FullName -match '[\\/]tags[\\/]' }) { + $tag = Get-Content -Raw -LiteralPath $file.FullName | ConvertFrom-Json + $changed = $false + $values = foreach ($value in $tag.values) { + if ($value -is [string] -and $value -match '^mineralogy:(lit_)?(.+)(_smooth|_brick|_slab|_stairs|_wall|_furnace|_relief_.+)$') { + $changed = $true; Optional $value + } else { $value } + } + if ($tag.PSObject.Properties.Name -contains 'optional') { + $changed = $true + foreach ($value in $tag.optional) { $values += Optional $value } + $tag.PSObject.Properties.Remove('optional') + } + if ($changed) { + $tag.values = @($values) + [IO.File]::WriteAllText($file.FullName, (($tag | ConvertTo-Json -Depth 8) -replace "`r`n", "`n") + "`n", $utf8) + } +} +$contractPath = Join-Path $projectPath 'src/test/resources/tag-compatibility-contract.json' +[IO.Directory]::CreateDirectory((Split-Path $contractPath -Parent)) | Out-Null +[IO.File]::WriteAllText($contractPath, (([ordered]@{ minecraft = $mc; tags = $contracts } | ConvertTo-Json -Depth 12) -replace "`r`n", "`n") + "`n", $utf8) Write-Output "Generated terrain compatibility for Minecraft $mc ($($terrain.Count) terrain identities; sulfur cubes: $cubes)" diff --git a/scripts/guard-construction-loot.ps1 b/scripts/guard-construction-loot.ps1 new file mode 100644 index 000000000..fb3bdd253 --- /dev/null +++ b/scripts/guard-construction-loot.ps1 @@ -0,0 +1,24 @@ +# Keep loot references loadable when a construction registration switch is off. +# The entry, pools and drop conditions are left intact. +[CmdletBinding()] +param([string]$ProjectRoot = (Split-Path $PSScriptRoot -Parent)) +$ErrorActionPreference = 'Stop' +$root = (Resolve-Path -LiteralPath $ProjectRoot).Path +$utf8 = [Text.UTF8Encoding]::new($false) +$guarded = 0 +foreach ($file in Get-ChildItem -LiteralPath "$root/src/main/resources/data/mineralogy/loot_tables/blocks" -Filter '*.json') { + $loot = Get-Content -Raw -LiteralPath $file.FullName | ConvertFrom-Json -AsHashtable + $items = @($loot.pools.entries | Where-Object { $_.type -eq 'minecraft:item' } | ForEach-Object { $_.name } | Sort-Object -Unique) + $optional = @($items | Where-Object { $_ -match '^mineralogy:(.+)(_smooth|_brick|_slab|_stairs|_wall|_furnace|_relief_.+)$' }) + if ($optional.Count -eq 0) { continue } + if ($optional.Count -ne 1 -or $items.Count -ne 1) { throw "Review multi-item construction loot: $($file.Name)" } + $condition = [ordered]@{ type = 'forge:item_exists'; item = $optional[0] } + if ($loot.Contains('forge:condition')) { $loot.Remove('forge:condition') } + # Forge 50 checks loading conditions on pools, not on the whole loot table. + foreach ($pool in $loot.pools) { $pool['forge:condition'] = $condition } + $guardedLoot = [ordered]@{} + foreach ($key in $loot.Keys) { $guardedLoot[$key] = $loot[$key] } + [IO.File]::WriteAllText($file.FullName, (($guardedLoot | ConvertTo-Json -Depth 20) -replace "`r`n", "`n") + "`n", $utf8) + $guarded++ +} +Write-Output "Guarded $guarded construction loot tables without changing drop entries" diff --git a/src/main/java/zone/moddev/mc/mineralogy/compat/CobblestoneTagPolicy.java b/src/main/java/zone/moddev/mc/mineralogy/compat/CobblestoneTagPolicy.java index f04b227ec..a1ce59023 100644 --- a/src/main/java/zone/moddev/mc/mineralogy/compat/CobblestoneTagPolicy.java +++ b/src/main/java/zone/moddev/mc/mineralogy/compat/CobblestoneTagPolicy.java @@ -28,6 +28,7 @@ /** Applies the legacy cobblestone option to Forge 50 block and item tags. */ public final class CobblestoneTagPolicy { private static final ResourceLocation COBBLESTONE = ResourceLocation.fromNamespaceAndPath("forge", "cobblestone"); + private static final ResourceLocation NORMAL_COBBLESTONE = ResourceLocation.fromNamespaceAndPath("forge", "cobblestone/normal"); private static final ResourceLocation STONE_CRAFTING_MATERIALS = ResourceLocation.fromNamespaceAndPath("minecraft", "stone_crafting_materials"); private static final ResourceLocation STONE_TOOL_MATERIALS = @@ -53,6 +54,8 @@ static void apply(RegistryAccess access) { Map, List>> blockTags = snapshot(blockRegistry); updateTag(blockTags, blockRegistry, Registries.BLOCK, COBBLESTONE, configuredBlocks, enabled, "chert", "pumice"); + updateTag(blockTags, blockRegistry, Registries.BLOCK, NORMAL_COBBLESTONE, + configuredBlocks, enabled, "chert", "pumice"); blockRegistry.bindTags(blockTags); Map, List>> itemTags = snapshot(itemRegistry); @@ -62,6 +65,8 @@ static void apply(RegistryAccess access) { configuredItems, enabled, "chert", "pumice"); updateTag(itemTags, itemRegistry, Registries.ITEM, STONE_TOOL_MATERIALS, configuredItems, enabled, "chert", "pumice"); + updateTag(itemTags, itemRegistry, Registries.ITEM, NORMAL_COBBLESTONE, + configuredItems, enabled, "chert", "pumice"); itemRegistry.bindTags(itemTags); Ingredient.invalidateAll(); diff --git a/src/main/java/zone/moddev/mc/mineralogy/compat/VanillaTerrainHooks.java b/src/main/java/zone/moddev/mc/mineralogy/compat/VanillaTerrainHooks.java new file mode 100644 index 000000000..ce5557794 --- /dev/null +++ b/src/main/java/zone/moddev/mc/mineralogy/compat/VanillaTerrainHooks.java @@ -0,0 +1,19 @@ +package zone.moddev.mc.mineralogy.compat; + +import net.minecraft.core.registries.Registries; +import net.minecraft.resources.ResourceLocation; +import net.minecraft.tags.TagKey; +import net.minecraft.world.level.block.Block; + +/** Internal bridge for the two narrowly scoped dripstone bytecode hooks. */ +public final class VanillaTerrainHooks { + private static final TagKey DRIPSTONE_BASE_STONES = TagKey.create( + Registries.BLOCK, ResourceLocation.fromNamespaceAndPath("mineralogy", "dripstone_base_stones")); + + private VanillaTerrainHooks() { } + + /** Reuses one tag identity; no allocation or configuration work in feature loops. */ + public static TagKey dripstoneBaseStones() { + return DRIPSTONE_BASE_STONES; + } +} diff --git a/src/main/resources/META-INF/coremods.json b/src/main/resources/META-INF/coremods.json index 8f8444dea..786540a4e 100644 --- a/src/main/resources/META-INF/coremods.json +++ b/src/main/resources/META-INF/coremods.json @@ -1,3 +1,4 @@ { - "mineralogy_legacy_world_fix": "coremods/mineralogy_legacy_world_fix.js" + "mineralogy_legacy_world_fix": "coremods/mineralogy_legacy_world_fix.js", + "mineralogy_terrain_compatibility": "coremods/mineralogy_terrain_compatibility.js" } diff --git a/src/main/resources/coremods/mineralogy_terrain_compatibility.js b/src/main/resources/coremods/mineralogy_terrain_compatibility.js new file mode 100644 index 000000000..5c661dc51 --- /dev/null +++ b/src/main/resources/coremods/mineralogy_terrain_compatibility.js @@ -0,0 +1,46 @@ +var Opcodes = Java.type('org.objectweb.asm.Opcodes'); +var ASMAPI = Java.type('net.minecraftforge.coremod.api.ASMAPI'); +var MethodInsnNode = Java.type('org.objectweb.asm.tree.MethodInsnNode'); + +// Only replace the one base-stone read in each proven dripstone helper. Other +// base-stone consumers, ore hosts and the vanilla tag itself remain unchanged. +function redirectBaseStone(classNode, descriptor) { + var hooks = 0; + for (var index = 0; index < classNode.methods.size(); ++index) { + var method = classNode.methods.get(index); + if (method.desc !== descriptor) continue; + for (var instruction = method.instructions.getFirst(); instruction !== null;) { + var next = instruction.getNext(); + if (instruction.getOpcode() === Opcodes.GETSTATIC + && instruction.owner === 'net/minecraft/tags/BlockTags' + && instruction.name === 'BASE_STONE_OVERWORLD' + && instruction.desc === 'Lnet/minecraft/tags/TagKey;') { + method.instructions.set(instruction, new MethodInsnNode(Opcodes.INVOKESTATIC, + 'zone/moddev/mc/mineralogy/compat/VanillaTerrainHooks', 'dripstoneBaseStones', + '()Lnet/minecraft/tags/TagKey;', false)); + ++hooks; + } + instruction = next; + } + } + if (hooks !== 1) throw new Error('Mineralogy dripstone hook drift in ' + classNode.name + ': expected 1, found ' + hooks); + ASMAPI.log('INFO', 'Mineralogy terrain compatibility: applied exactly one hook to ' + classNode.name); + return classNode; +} + +function initializeCoreMod() { + return { + 'mineralogy_dripstone_water_pocket': { + 'target': {'type': 'CLASS', 'name': 'net.minecraft.world.level.levelgen.feature.DripstoneClusterFeature'}, + 'transformer': function(classNode) { + return redirectBaseStone(classNode, '(Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)Z'); + } + }, + 'mineralogy_large_dripstone_boundary': { + 'target': {'type': 'CLASS', 'name': 'net.minecraft.world.level.levelgen.feature.LargeDripstoneFeature$LargeDripstone'}, + 'transformer': function(classNode) { + return redirectBaseStone(classNode, '(Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/feature/LargeDripstoneFeature$WindOffsetter;)V'); + } + } + }; +} diff --git a/src/main/resources/data/forge/tags/blocks/cobblestone/normal.json b/src/main/resources/data/forge/tags/blocks/cobblestone/normal.json new file mode 100644 index 000000000..4a747bf9a --- /dev/null +++ b/src/main/resources/data/forge/tags/blocks/cobblestone/normal.json @@ -0,0 +1,7 @@ +{ + "replace": false, + "values": [ + "mineralogy:chert", + "mineralogy:pumice" + ] +} diff --git a/src/main/resources/data/forge/tags/blocks/ores.json b/src/main/resources/data/forge/tags/blocks/ores.json new file mode 100644 index 000000000..27d2ea0ac --- /dev/null +++ b/src/main/resources/data/forge/tags/blocks/ores.json @@ -0,0 +1,8 @@ +{ + "replace": false, + "values": [ + "#forge:ores/nitrate", + "#forge:ores/phosphorous", + "#forge:ores/sulfur" + ] +} diff --git a/src/main/resources/data/forge/tags/blocks/stone.json b/src/main/resources/data/forge/tags/blocks/stone.json new file mode 100644 index 000000000..10aec0d1c --- /dev/null +++ b/src/main/resources/data/forge/tags/blocks/stone.json @@ -0,0 +1,6 @@ +{ + "replace": false, + "values": [ + "#mineralogy:raw_stones" + ] +} diff --git a/src/main/resources/data/forge/tags/blocks/storage_blocks.json b/src/main/resources/data/forge/tags/blocks/storage_blocks.json new file mode 100644 index 000000000..9fa0c976f --- /dev/null +++ b/src/main/resources/data/forge/tags/blocks/storage_blocks.json @@ -0,0 +1,11 @@ +{ + "replace": false, + "values": [ + "#forge:storage_blocks/chalk", + "#forge:storage_blocks/gypsum", + "#forge:storage_blocks/nitrate", + "#forge:storage_blocks/phosphorous", + "#forge:storage_blocks/rock_salt", + "#forge:storage_blocks/sulfur" + ] +} diff --git a/src/main/resources/data/forge/tags/items/cobblestone/normal.json b/src/main/resources/data/forge/tags/items/cobblestone/normal.json new file mode 100644 index 000000000..4a747bf9a --- /dev/null +++ b/src/main/resources/data/forge/tags/items/cobblestone/normal.json @@ -0,0 +1,7 @@ +{ + "replace": false, + "values": [ + "mineralogy:chert", + "mineralogy:pumice" + ] +} diff --git a/src/main/resources/data/forge/tags/items/ores.json b/src/main/resources/data/forge/tags/items/ores.json new file mode 100644 index 000000000..27d2ea0ac --- /dev/null +++ b/src/main/resources/data/forge/tags/items/ores.json @@ -0,0 +1,8 @@ +{ + "replace": false, + "values": [ + "#forge:ores/nitrate", + "#forge:ores/phosphorous", + "#forge:ores/sulfur" + ] +} diff --git a/src/main/resources/data/forge/tags/items/stone.json b/src/main/resources/data/forge/tags/items/stone.json new file mode 100644 index 000000000..10aec0d1c --- /dev/null +++ b/src/main/resources/data/forge/tags/items/stone.json @@ -0,0 +1,6 @@ +{ + "replace": false, + "values": [ + "#mineralogy:raw_stones" + ] +} diff --git a/src/main/resources/data/forge/tags/items/storage_blocks.json b/src/main/resources/data/forge/tags/items/storage_blocks.json new file mode 100644 index 000000000..9fa0c976f --- /dev/null +++ b/src/main/resources/data/forge/tags/items/storage_blocks.json @@ -0,0 +1,11 @@ +{ + "replace": false, + "values": [ + "#forge:storage_blocks/chalk", + "#forge:storage_blocks/gypsum", + "#forge:storage_blocks/nitrate", + "#forge:storage_blocks/phosphorous", + "#forge:storage_blocks/rock_salt", + "#forge:storage_blocks/sulfur" + ] +} diff --git a/src/main/resources/data/minecraft/tags/blocks/azalea_root_replaceable.json b/src/main/resources/data/minecraft/tags/blocks/azalea_root_replaceable.json new file mode 100644 index 000000000..10c160fb5 --- /dev/null +++ b/src/main/resources/data/minecraft/tags/blocks/azalea_root_replaceable.json @@ -0,0 +1,6 @@ +{ + "replace": false, + "values": [ + "#mineralogy:terrain_rocks" + ] +} diff --git a/src/main/resources/data/minecraft/tags/blocks/goats_spawnable_on.json b/src/main/resources/data/minecraft/tags/blocks/goats_spawnable_on.json new file mode 100644 index 000000000..10c160fb5 --- /dev/null +++ b/src/main/resources/data/minecraft/tags/blocks/goats_spawnable_on.json @@ -0,0 +1,6 @@ +{ + "replace": false, + "values": [ + "#mineralogy:terrain_rocks" + ] +} diff --git a/src/main/resources/data/minecraft/tags/blocks/slabs.json b/src/main/resources/data/minecraft/tags/blocks/slabs.json new file mode 100644 index 000000000..d5ef1d87c --- /dev/null +++ b/src/main/resources/data/minecraft/tags/blocks/slabs.json @@ -0,0 +1,437 @@ +{ + "replace": false, + "values": [ + { + "id": "mineralogy:andesite_slab", + "required": false + }, + { + "id": "mineralogy:andesite_smooth_slab", + "required": false + }, + { + "id": "mineralogy:andesite_brick_slab", + "required": false + }, + { + "id": "mineralogy:andesite_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:basalt_slab", + "required": false + }, + { + "id": "mineralogy:basalt_smooth_slab", + "required": false + }, + { + "id": "mineralogy:basalt_brick_slab", + "required": false + }, + { + "id": "mineralogy:basalt_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:diorite_slab", + "required": false + }, + { + "id": "mineralogy:diorite_smooth_slab", + "required": false + }, + { + "id": "mineralogy:diorite_brick_slab", + "required": false + }, + { + "id": "mineralogy:diorite_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:granite_slab", + "required": false + }, + { + "id": "mineralogy:granite_smooth_slab", + "required": false + }, + { + "id": "mineralogy:granite_brick_slab", + "required": false + }, + { + "id": "mineralogy:granite_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:rhyolite_slab", + "required": false + }, + { + "id": "mineralogy:rhyolite_smooth_slab", + "required": false + }, + { + "id": "mineralogy:rhyolite_brick_slab", + "required": false + }, + { + "id": "mineralogy:rhyolite_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:pegmatite_slab", + "required": false + }, + { + "id": "mineralogy:pegmatite_smooth_slab", + "required": false + }, + { + "id": "mineralogy:pegmatite_brick_slab", + "required": false + }, + { + "id": "mineralogy:pegmatite_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:diabase_slab", + "required": false + }, + { + "id": "mineralogy:diabase_smooth_slab", + "required": false + }, + { + "id": "mineralogy:diabase_brick_slab", + "required": false + }, + { + "id": "mineralogy:diabase_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:gabbro_slab", + "required": false + }, + { + "id": "mineralogy:gabbro_smooth_slab", + "required": false + }, + { + "id": "mineralogy:gabbro_brick_slab", + "required": false + }, + { + "id": "mineralogy:gabbro_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:peridotite_slab", + "required": false + }, + { + "id": "mineralogy:peridotite_smooth_slab", + "required": false + }, + { + "id": "mineralogy:peridotite_brick_slab", + "required": false + }, + { + "id": "mineralogy:peridotite_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:basaltic_glass_slab", + "required": false + }, + { + "id": "mineralogy:basaltic_glass_smooth_slab", + "required": false + }, + { + "id": "mineralogy:basaltic_glass_brick_slab", + "required": false + }, + { + "id": "mineralogy:basaltic_glass_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:scoria_slab", + "required": false + }, + { + "id": "mineralogy:scoria_smooth_slab", + "required": false + }, + { + "id": "mineralogy:scoria_brick_slab", + "required": false + }, + { + "id": "mineralogy:scoria_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:tuff_slab", + "required": false + }, + { + "id": "mineralogy:tuff_smooth_slab", + "required": false + }, + { + "id": "mineralogy:tuff_brick_slab", + "required": false + }, + { + "id": "mineralogy:tuff_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:shale_slab", + "required": false + }, + { + "id": "mineralogy:shale_smooth_slab", + "required": false + }, + { + "id": "mineralogy:shale_brick_slab", + "required": false + }, + { + "id": "mineralogy:shale_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:conglomerate_slab", + "required": false + }, + { + "id": "mineralogy:conglomerate_smooth_slab", + "required": false + }, + { + "id": "mineralogy:conglomerate_brick_slab", + "required": false + }, + { + "id": "mineralogy:conglomerate_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:dolomite_slab", + "required": false + }, + { + "id": "mineralogy:dolomite_smooth_slab", + "required": false + }, + { + "id": "mineralogy:dolomite_brick_slab", + "required": false + }, + { + "id": "mineralogy:dolomite_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:limestone_slab", + "required": false + }, + { + "id": "mineralogy:limestone_smooth_slab", + "required": false + }, + { + "id": "mineralogy:limestone_brick_slab", + "required": false + }, + { + "id": "mineralogy:limestone_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:siltstone_slab", + "required": false + }, + { + "id": "mineralogy:siltstone_smooth_slab", + "required": false + }, + { + "id": "mineralogy:siltstone_brick_slab", + "required": false + }, + { + "id": "mineralogy:siltstone_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:marble_slab", + "required": false + }, + { + "id": "mineralogy:marble_smooth_slab", + "required": false + }, + { + "id": "mineralogy:marble_brick_slab", + "required": false + }, + { + "id": "mineralogy:marble_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:slate_slab", + "required": false + }, + { + "id": "mineralogy:slate_smooth_slab", + "required": false + }, + { + "id": "mineralogy:slate_brick_slab", + "required": false + }, + { + "id": "mineralogy:slate_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:schist_slab", + "required": false + }, + { + "id": "mineralogy:schist_smooth_slab", + "required": false + }, + { + "id": "mineralogy:schist_brick_slab", + "required": false + }, + { + "id": "mineralogy:schist_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:gneiss_slab", + "required": false + }, + { + "id": "mineralogy:gneiss_smooth_slab", + "required": false + }, + { + "id": "mineralogy:gneiss_brick_slab", + "required": false + }, + { + "id": "mineralogy:gneiss_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:phyllite_slab", + "required": false + }, + { + "id": "mineralogy:phyllite_smooth_slab", + "required": false + }, + { + "id": "mineralogy:phyllite_brick_slab", + "required": false + }, + { + "id": "mineralogy:phyllite_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:amphibolite_slab", + "required": false + }, + { + "id": "mineralogy:amphibolite_smooth_slab", + "required": false + }, + { + "id": "mineralogy:amphibolite_brick_slab", + "required": false + }, + { + "id": "mineralogy:amphibolite_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:hornfels_slab", + "required": false + }, + { + "id": "mineralogy:hornfels_smooth_slab", + "required": false + }, + { + "id": "mineralogy:hornfels_brick_slab", + "required": false + }, + { + "id": "mineralogy:hornfels_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:quartzite_slab", + "required": false + }, + { + "id": "mineralogy:quartzite_smooth_slab", + "required": false + }, + { + "id": "mineralogy:quartzite_brick_slab", + "required": false + }, + { + "id": "mineralogy:quartzite_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:novaculite_slab", + "required": false + }, + { + "id": "mineralogy:novaculite_smooth_slab", + "required": false + }, + { + "id": "mineralogy:novaculite_brick_slab", + "required": false + }, + { + "id": "mineralogy:novaculite_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:rock_salt_slab", + "required": false + }, + { + "id": "mineralogy:rock_salt_smooth_slab", + "required": false + }, + { + "id": "mineralogy:rock_salt_brick_slab", + "required": false + }, + { + "id": "mineralogy:rock_salt_smooth_brick_slab", + "required": false + } + ] +} diff --git a/src/main/resources/data/minecraft/tags/blocks/snaps_goat_horn.json b/src/main/resources/data/minecraft/tags/blocks/snaps_goat_horn.json new file mode 100644 index 000000000..cf00778d9 --- /dev/null +++ b/src/main/resources/data/minecraft/tags/blocks/snaps_goat_horn.json @@ -0,0 +1,6 @@ +{ + "replace": false, + "values": [ + "#mineralogy:horn_breaking_rocks" + ] +} diff --git a/src/main/resources/data/minecraft/tags/blocks/stairs.json b/src/main/resources/data/minecraft/tags/blocks/stairs.json new file mode 100644 index 000000000..b3f94f375 --- /dev/null +++ b/src/main/resources/data/minecraft/tags/blocks/stairs.json @@ -0,0 +1,437 @@ +{ + "replace": false, + "values": [ + { + "id": "mineralogy:andesite_stairs", + "required": false + }, + { + "id": "mineralogy:andesite_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:andesite_brick_stairs", + "required": false + }, + { + "id": "mineralogy:andesite_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:basalt_stairs", + "required": false + }, + { + "id": "mineralogy:basalt_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:basalt_brick_stairs", + "required": false + }, + { + "id": "mineralogy:basalt_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:diorite_stairs", + "required": false + }, + { + "id": "mineralogy:diorite_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:diorite_brick_stairs", + "required": false + }, + { + "id": "mineralogy:diorite_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:granite_stairs", + "required": false + }, + { + "id": "mineralogy:granite_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:granite_brick_stairs", + "required": false + }, + { + "id": "mineralogy:granite_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:rhyolite_stairs", + "required": false + }, + { + "id": "mineralogy:rhyolite_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:rhyolite_brick_stairs", + "required": false + }, + { + "id": "mineralogy:rhyolite_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:pegmatite_stairs", + "required": false + }, + { + "id": "mineralogy:pegmatite_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:pegmatite_brick_stairs", + "required": false + }, + { + "id": "mineralogy:pegmatite_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:diabase_stairs", + "required": false + }, + { + "id": "mineralogy:diabase_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:diabase_brick_stairs", + "required": false + }, + { + "id": "mineralogy:diabase_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:gabbro_stairs", + "required": false + }, + { + "id": "mineralogy:gabbro_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:gabbro_brick_stairs", + "required": false + }, + { + "id": "mineralogy:gabbro_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:peridotite_stairs", + "required": false + }, + { + "id": "mineralogy:peridotite_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:peridotite_brick_stairs", + "required": false + }, + { + "id": "mineralogy:peridotite_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:basaltic_glass_stairs", + "required": false + }, + { + "id": "mineralogy:basaltic_glass_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:basaltic_glass_brick_stairs", + "required": false + }, + { + "id": "mineralogy:basaltic_glass_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:scoria_stairs", + "required": false + }, + { + "id": "mineralogy:scoria_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:scoria_brick_stairs", + "required": false + }, + { + "id": "mineralogy:scoria_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:tuff_stairs", + "required": false + }, + { + "id": "mineralogy:tuff_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:tuff_brick_stairs", + "required": false + }, + { + "id": "mineralogy:tuff_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:shale_stairs", + "required": false + }, + { + "id": "mineralogy:shale_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:shale_brick_stairs", + "required": false + }, + { + "id": "mineralogy:shale_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:conglomerate_stairs", + "required": false + }, + { + "id": "mineralogy:conglomerate_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:conglomerate_brick_stairs", + "required": false + }, + { + "id": "mineralogy:conglomerate_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:dolomite_stairs", + "required": false + }, + { + "id": "mineralogy:dolomite_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:dolomite_brick_stairs", + "required": false + }, + { + "id": "mineralogy:dolomite_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:limestone_stairs", + "required": false + }, + { + "id": "mineralogy:limestone_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:limestone_brick_stairs", + "required": false + }, + { + "id": "mineralogy:limestone_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:siltstone_stairs", + "required": false + }, + { + "id": "mineralogy:siltstone_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:siltstone_brick_stairs", + "required": false + }, + { + "id": "mineralogy:siltstone_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:marble_stairs", + "required": false + }, + { + "id": "mineralogy:marble_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:marble_brick_stairs", + "required": false + }, + { + "id": "mineralogy:marble_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:slate_stairs", + "required": false + }, + { + "id": "mineralogy:slate_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:slate_brick_stairs", + "required": false + }, + { + "id": "mineralogy:slate_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:schist_stairs", + "required": false + }, + { + "id": "mineralogy:schist_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:schist_brick_stairs", + "required": false + }, + { + "id": "mineralogy:schist_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:gneiss_stairs", + "required": false + }, + { + "id": "mineralogy:gneiss_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:gneiss_brick_stairs", + "required": false + }, + { + "id": "mineralogy:gneiss_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:phyllite_stairs", + "required": false + }, + { + "id": "mineralogy:phyllite_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:phyllite_brick_stairs", + "required": false + }, + { + "id": "mineralogy:phyllite_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:amphibolite_stairs", + "required": false + }, + { + "id": "mineralogy:amphibolite_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:amphibolite_brick_stairs", + "required": false + }, + { + "id": "mineralogy:amphibolite_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:hornfels_stairs", + "required": false + }, + { + "id": "mineralogy:hornfels_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:hornfels_brick_stairs", + "required": false + }, + { + "id": "mineralogy:hornfels_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:quartzite_stairs", + "required": false + }, + { + "id": "mineralogy:quartzite_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:quartzite_brick_stairs", + "required": false + }, + { + "id": "mineralogy:quartzite_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:novaculite_stairs", + "required": false + }, + { + "id": "mineralogy:novaculite_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:novaculite_brick_stairs", + "required": false + }, + { + "id": "mineralogy:novaculite_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:rock_salt_stairs", + "required": false + }, + { + "id": "mineralogy:rock_salt_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:rock_salt_brick_stairs", + "required": false + }, + { + "id": "mineralogy:rock_salt_smooth_brick_stairs", + "required": false + } + ] +} diff --git a/src/main/resources/data/minecraft/tags/blocks/wall_post_override.json b/src/main/resources/data/minecraft/tags/blocks/wall_post_override.json new file mode 100644 index 000000000..6aac0fa0d --- /dev/null +++ b/src/main/resources/data/minecraft/tags/blocks/wall_post_override.json @@ -0,0 +1,6 @@ +{ + "replace": false, + "values": [ + "mineralogy:rocksaltlamp" + ] +} diff --git a/src/main/resources/data/minecraft/tags/blocks/walls.json b/src/main/resources/data/minecraft/tags/blocks/walls.json index 8110179a8..a3c943442 100644 --- a/src/main/resources/data/minecraft/tags/blocks/walls.json +++ b/src/main/resources/data/minecraft/tags/blocks/walls.json @@ -1,113 +1,437 @@ { "replace": false, "values": [ - "mineralogy:amphibolite_brick_wall", - "mineralogy:amphibolite_smooth_brick_wall", - "mineralogy:amphibolite_smooth_wall", - "mineralogy:amphibolite_wall", - "mineralogy:andesite_brick_wall", - "mineralogy:andesite_smooth_brick_wall", - "mineralogy:andesite_smooth_wall", - "mineralogy:andesite_wall", - "mineralogy:basalt_brick_wall", - "mineralogy:basalt_smooth_brick_wall", - "mineralogy:basalt_smooth_wall", - "mineralogy:basalt_wall", - "mineralogy:basaltic_glass_brick_wall", - "mineralogy:basaltic_glass_smooth_brick_wall", - "mineralogy:basaltic_glass_smooth_wall", - "mineralogy:basaltic_glass_wall", - "mineralogy:conglomerate_brick_wall", - "mineralogy:conglomerate_smooth_brick_wall", - "mineralogy:conglomerate_smooth_wall", - "mineralogy:conglomerate_wall", - "mineralogy:diabase_brick_wall", - "mineralogy:diabase_smooth_brick_wall", - "mineralogy:diabase_smooth_wall", - "mineralogy:diabase_wall", - "mineralogy:diorite_brick_wall", - "mineralogy:diorite_smooth_brick_wall", - "mineralogy:diorite_smooth_wall", - "mineralogy:diorite_wall", - "mineralogy:dolomite_brick_wall", - "mineralogy:dolomite_smooth_brick_wall", - "mineralogy:dolomite_smooth_wall", - "mineralogy:dolomite_wall", - "mineralogy:gabbro_brick_wall", - "mineralogy:gabbro_smooth_brick_wall", - "mineralogy:gabbro_smooth_wall", - "mineralogy:gabbro_wall", - "mineralogy:gneiss_brick_wall", - "mineralogy:gneiss_smooth_brick_wall", - "mineralogy:gneiss_smooth_wall", - "mineralogy:gneiss_wall", - "mineralogy:granite_brick_wall", - "mineralogy:granite_smooth_brick_wall", - "mineralogy:granite_smooth_wall", - "mineralogy:granite_wall", - "mineralogy:hornfels_brick_wall", - "mineralogy:hornfels_smooth_brick_wall", - "mineralogy:hornfels_smooth_wall", - "mineralogy:hornfels_wall", - "mineralogy:limestone_brick_wall", - "mineralogy:limestone_smooth_brick_wall", - "mineralogy:limestone_smooth_wall", - "mineralogy:limestone_wall", - "mineralogy:marble_brick_wall", - "mineralogy:marble_smooth_brick_wall", - "mineralogy:marble_smooth_wall", - "mineralogy:marble_wall", - "mineralogy:novaculite_brick_wall", - "mineralogy:novaculite_smooth_brick_wall", - "mineralogy:novaculite_smooth_wall", - "mineralogy:novaculite_wall", - "mineralogy:pegmatite_brick_wall", - "mineralogy:pegmatite_smooth_brick_wall", - "mineralogy:pegmatite_smooth_wall", - "mineralogy:pegmatite_wall", - "mineralogy:peridotite_brick_wall", - "mineralogy:peridotite_smooth_brick_wall", - "mineralogy:peridotite_smooth_wall", - "mineralogy:peridotite_wall", - "mineralogy:phyllite_brick_wall", - "mineralogy:phyllite_smooth_brick_wall", - "mineralogy:phyllite_smooth_wall", - "mineralogy:phyllite_wall", - "mineralogy:quartzite_brick_wall", - "mineralogy:quartzite_smooth_brick_wall", - "mineralogy:quartzite_smooth_wall", - "mineralogy:quartzite_wall", - "mineralogy:rhyolite_brick_wall", - "mineralogy:rhyolite_smooth_brick_wall", - "mineralogy:rhyolite_smooth_wall", - "mineralogy:rhyolite_wall", - "mineralogy:rock_salt_brick_wall", - "mineralogy:rock_salt_smooth_brick_wall", - "mineralogy:rock_salt_smooth_wall", - "mineralogy:rock_salt_wall", - "mineralogy:schist_brick_wall", - "mineralogy:schist_smooth_brick_wall", - "mineralogy:schist_smooth_wall", - "mineralogy:schist_wall", - "mineralogy:scoria_brick_wall", - "mineralogy:scoria_smooth_brick_wall", - "mineralogy:scoria_smooth_wall", - "mineralogy:scoria_wall", - "mineralogy:shale_brick_wall", - "mineralogy:shale_smooth_brick_wall", - "mineralogy:shale_smooth_wall", - "mineralogy:shale_wall", - "mineralogy:siltstone_brick_wall", - "mineralogy:siltstone_smooth_brick_wall", - "mineralogy:siltstone_smooth_wall", - "mineralogy:siltstone_wall", - "mineralogy:slate_brick_wall", - "mineralogy:slate_smooth_brick_wall", - "mineralogy:slate_smooth_wall", - "mineralogy:slate_wall", - "mineralogy:tuff_brick_wall", - "mineralogy:tuff_smooth_brick_wall", - "mineralogy:tuff_smooth_wall", - "mineralogy:tuff_wall" + { + "id": "mineralogy:andesite_wall", + "required": false + }, + { + "id": "mineralogy:andesite_smooth_wall", + "required": false + }, + { + "id": "mineralogy:andesite_brick_wall", + "required": false + }, + { + "id": "mineralogy:andesite_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:basalt_wall", + "required": false + }, + { + "id": "mineralogy:basalt_smooth_wall", + "required": false + }, + { + "id": "mineralogy:basalt_brick_wall", + "required": false + }, + { + "id": "mineralogy:basalt_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:diorite_wall", + "required": false + }, + { + "id": "mineralogy:diorite_smooth_wall", + "required": false + }, + { + "id": "mineralogy:diorite_brick_wall", + "required": false + }, + { + "id": "mineralogy:diorite_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:granite_wall", + "required": false + }, + { + "id": "mineralogy:granite_smooth_wall", + "required": false + }, + { + "id": "mineralogy:granite_brick_wall", + "required": false + }, + { + "id": "mineralogy:granite_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:rhyolite_wall", + "required": false + }, + { + "id": "mineralogy:rhyolite_smooth_wall", + "required": false + }, + { + "id": "mineralogy:rhyolite_brick_wall", + "required": false + }, + { + "id": "mineralogy:rhyolite_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:pegmatite_wall", + "required": false + }, + { + "id": "mineralogy:pegmatite_smooth_wall", + "required": false + }, + { + "id": "mineralogy:pegmatite_brick_wall", + "required": false + }, + { + "id": "mineralogy:pegmatite_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:diabase_wall", + "required": false + }, + { + "id": "mineralogy:diabase_smooth_wall", + "required": false + }, + { + "id": "mineralogy:diabase_brick_wall", + "required": false + }, + { + "id": "mineralogy:diabase_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:gabbro_wall", + "required": false + }, + { + "id": "mineralogy:gabbro_smooth_wall", + "required": false + }, + { + "id": "mineralogy:gabbro_brick_wall", + "required": false + }, + { + "id": "mineralogy:gabbro_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:peridotite_wall", + "required": false + }, + { + "id": "mineralogy:peridotite_smooth_wall", + "required": false + }, + { + "id": "mineralogy:peridotite_brick_wall", + "required": false + }, + { + "id": "mineralogy:peridotite_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:basaltic_glass_wall", + "required": false + }, + { + "id": "mineralogy:basaltic_glass_smooth_wall", + "required": false + }, + { + "id": "mineralogy:basaltic_glass_brick_wall", + "required": false + }, + { + "id": "mineralogy:basaltic_glass_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:scoria_wall", + "required": false + }, + { + "id": "mineralogy:scoria_smooth_wall", + "required": false + }, + { + "id": "mineralogy:scoria_brick_wall", + "required": false + }, + { + "id": "mineralogy:scoria_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:tuff_wall", + "required": false + }, + { + "id": "mineralogy:tuff_smooth_wall", + "required": false + }, + { + "id": "mineralogy:tuff_brick_wall", + "required": false + }, + { + "id": "mineralogy:tuff_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:shale_wall", + "required": false + }, + { + "id": "mineralogy:shale_smooth_wall", + "required": false + }, + { + "id": "mineralogy:shale_brick_wall", + "required": false + }, + { + "id": "mineralogy:shale_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:conglomerate_wall", + "required": false + }, + { + "id": "mineralogy:conglomerate_smooth_wall", + "required": false + }, + { + "id": "mineralogy:conglomerate_brick_wall", + "required": false + }, + { + "id": "mineralogy:conglomerate_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:dolomite_wall", + "required": false + }, + { + "id": "mineralogy:dolomite_smooth_wall", + "required": false + }, + { + "id": "mineralogy:dolomite_brick_wall", + "required": false + }, + { + "id": "mineralogy:dolomite_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:limestone_wall", + "required": false + }, + { + "id": "mineralogy:limestone_smooth_wall", + "required": false + }, + { + "id": "mineralogy:limestone_brick_wall", + "required": false + }, + { + "id": "mineralogy:limestone_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:siltstone_wall", + "required": false + }, + { + "id": "mineralogy:siltstone_smooth_wall", + "required": false + }, + { + "id": "mineralogy:siltstone_brick_wall", + "required": false + }, + { + "id": "mineralogy:siltstone_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:marble_wall", + "required": false + }, + { + "id": "mineralogy:marble_smooth_wall", + "required": false + }, + { + "id": "mineralogy:marble_brick_wall", + "required": false + }, + { + "id": "mineralogy:marble_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:slate_wall", + "required": false + }, + { + "id": "mineralogy:slate_smooth_wall", + "required": false + }, + { + "id": "mineralogy:slate_brick_wall", + "required": false + }, + { + "id": "mineralogy:slate_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:schist_wall", + "required": false + }, + { + "id": "mineralogy:schist_smooth_wall", + "required": false + }, + { + "id": "mineralogy:schist_brick_wall", + "required": false + }, + { + "id": "mineralogy:schist_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:gneiss_wall", + "required": false + }, + { + "id": "mineralogy:gneiss_smooth_wall", + "required": false + }, + { + "id": "mineralogy:gneiss_brick_wall", + "required": false + }, + { + "id": "mineralogy:gneiss_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:phyllite_wall", + "required": false + }, + { + "id": "mineralogy:phyllite_smooth_wall", + "required": false + }, + { + "id": "mineralogy:phyllite_brick_wall", + "required": false + }, + { + "id": "mineralogy:phyllite_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:amphibolite_wall", + "required": false + }, + { + "id": "mineralogy:amphibolite_smooth_wall", + "required": false + }, + { + "id": "mineralogy:amphibolite_brick_wall", + "required": false + }, + { + "id": "mineralogy:amphibolite_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:hornfels_wall", + "required": false + }, + { + "id": "mineralogy:hornfels_smooth_wall", + "required": false + }, + { + "id": "mineralogy:hornfels_brick_wall", + "required": false + }, + { + "id": "mineralogy:hornfels_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:quartzite_wall", + "required": false + }, + { + "id": "mineralogy:quartzite_smooth_wall", + "required": false + }, + { + "id": "mineralogy:quartzite_brick_wall", + "required": false + }, + { + "id": "mineralogy:quartzite_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:novaculite_wall", + "required": false + }, + { + "id": "mineralogy:novaculite_smooth_wall", + "required": false + }, + { + "id": "mineralogy:novaculite_brick_wall", + "required": false + }, + { + "id": "mineralogy:novaculite_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:rock_salt_wall", + "required": false + }, + { + "id": "mineralogy:rock_salt_smooth_wall", + "required": false + }, + { + "id": "mineralogy:rock_salt_brick_wall", + "required": false + }, + { + "id": "mineralogy:rock_salt_smooth_brick_wall", + "required": false + } ] } diff --git a/src/main/resources/data/minecraft/tags/items/slabs.json b/src/main/resources/data/minecraft/tags/items/slabs.json new file mode 100644 index 000000000..d5ef1d87c --- /dev/null +++ b/src/main/resources/data/minecraft/tags/items/slabs.json @@ -0,0 +1,437 @@ +{ + "replace": false, + "values": [ + { + "id": "mineralogy:andesite_slab", + "required": false + }, + { + "id": "mineralogy:andesite_smooth_slab", + "required": false + }, + { + "id": "mineralogy:andesite_brick_slab", + "required": false + }, + { + "id": "mineralogy:andesite_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:basalt_slab", + "required": false + }, + { + "id": "mineralogy:basalt_smooth_slab", + "required": false + }, + { + "id": "mineralogy:basalt_brick_slab", + "required": false + }, + { + "id": "mineralogy:basalt_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:diorite_slab", + "required": false + }, + { + "id": "mineralogy:diorite_smooth_slab", + "required": false + }, + { + "id": "mineralogy:diorite_brick_slab", + "required": false + }, + { + "id": "mineralogy:diorite_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:granite_slab", + "required": false + }, + { + "id": "mineralogy:granite_smooth_slab", + "required": false + }, + { + "id": "mineralogy:granite_brick_slab", + "required": false + }, + { + "id": "mineralogy:granite_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:rhyolite_slab", + "required": false + }, + { + "id": "mineralogy:rhyolite_smooth_slab", + "required": false + }, + { + "id": "mineralogy:rhyolite_brick_slab", + "required": false + }, + { + "id": "mineralogy:rhyolite_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:pegmatite_slab", + "required": false + }, + { + "id": "mineralogy:pegmatite_smooth_slab", + "required": false + }, + { + "id": "mineralogy:pegmatite_brick_slab", + "required": false + }, + { + "id": "mineralogy:pegmatite_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:diabase_slab", + "required": false + }, + { + "id": "mineralogy:diabase_smooth_slab", + "required": false + }, + { + "id": "mineralogy:diabase_brick_slab", + "required": false + }, + { + "id": "mineralogy:diabase_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:gabbro_slab", + "required": false + }, + { + "id": "mineralogy:gabbro_smooth_slab", + "required": false + }, + { + "id": "mineralogy:gabbro_brick_slab", + "required": false + }, + { + "id": "mineralogy:gabbro_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:peridotite_slab", + "required": false + }, + { + "id": "mineralogy:peridotite_smooth_slab", + "required": false + }, + { + "id": "mineralogy:peridotite_brick_slab", + "required": false + }, + { + "id": "mineralogy:peridotite_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:basaltic_glass_slab", + "required": false + }, + { + "id": "mineralogy:basaltic_glass_smooth_slab", + "required": false + }, + { + "id": "mineralogy:basaltic_glass_brick_slab", + "required": false + }, + { + "id": "mineralogy:basaltic_glass_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:scoria_slab", + "required": false + }, + { + "id": "mineralogy:scoria_smooth_slab", + "required": false + }, + { + "id": "mineralogy:scoria_brick_slab", + "required": false + }, + { + "id": "mineralogy:scoria_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:tuff_slab", + "required": false + }, + { + "id": "mineralogy:tuff_smooth_slab", + "required": false + }, + { + "id": "mineralogy:tuff_brick_slab", + "required": false + }, + { + "id": "mineralogy:tuff_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:shale_slab", + "required": false + }, + { + "id": "mineralogy:shale_smooth_slab", + "required": false + }, + { + "id": "mineralogy:shale_brick_slab", + "required": false + }, + { + "id": "mineralogy:shale_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:conglomerate_slab", + "required": false + }, + { + "id": "mineralogy:conglomerate_smooth_slab", + "required": false + }, + { + "id": "mineralogy:conglomerate_brick_slab", + "required": false + }, + { + "id": "mineralogy:conglomerate_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:dolomite_slab", + "required": false + }, + { + "id": "mineralogy:dolomite_smooth_slab", + "required": false + }, + { + "id": "mineralogy:dolomite_brick_slab", + "required": false + }, + { + "id": "mineralogy:dolomite_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:limestone_slab", + "required": false + }, + { + "id": "mineralogy:limestone_smooth_slab", + "required": false + }, + { + "id": "mineralogy:limestone_brick_slab", + "required": false + }, + { + "id": "mineralogy:limestone_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:siltstone_slab", + "required": false + }, + { + "id": "mineralogy:siltstone_smooth_slab", + "required": false + }, + { + "id": "mineralogy:siltstone_brick_slab", + "required": false + }, + { + "id": "mineralogy:siltstone_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:marble_slab", + "required": false + }, + { + "id": "mineralogy:marble_smooth_slab", + "required": false + }, + { + "id": "mineralogy:marble_brick_slab", + "required": false + }, + { + "id": "mineralogy:marble_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:slate_slab", + "required": false + }, + { + "id": "mineralogy:slate_smooth_slab", + "required": false + }, + { + "id": "mineralogy:slate_brick_slab", + "required": false + }, + { + "id": "mineralogy:slate_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:schist_slab", + "required": false + }, + { + "id": "mineralogy:schist_smooth_slab", + "required": false + }, + { + "id": "mineralogy:schist_brick_slab", + "required": false + }, + { + "id": "mineralogy:schist_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:gneiss_slab", + "required": false + }, + { + "id": "mineralogy:gneiss_smooth_slab", + "required": false + }, + { + "id": "mineralogy:gneiss_brick_slab", + "required": false + }, + { + "id": "mineralogy:gneiss_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:phyllite_slab", + "required": false + }, + { + "id": "mineralogy:phyllite_smooth_slab", + "required": false + }, + { + "id": "mineralogy:phyllite_brick_slab", + "required": false + }, + { + "id": "mineralogy:phyllite_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:amphibolite_slab", + "required": false + }, + { + "id": "mineralogy:amphibolite_smooth_slab", + "required": false + }, + { + "id": "mineralogy:amphibolite_brick_slab", + "required": false + }, + { + "id": "mineralogy:amphibolite_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:hornfels_slab", + "required": false + }, + { + "id": "mineralogy:hornfels_smooth_slab", + "required": false + }, + { + "id": "mineralogy:hornfels_brick_slab", + "required": false + }, + { + "id": "mineralogy:hornfels_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:quartzite_slab", + "required": false + }, + { + "id": "mineralogy:quartzite_smooth_slab", + "required": false + }, + { + "id": "mineralogy:quartzite_brick_slab", + "required": false + }, + { + "id": "mineralogy:quartzite_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:novaculite_slab", + "required": false + }, + { + "id": "mineralogy:novaculite_smooth_slab", + "required": false + }, + { + "id": "mineralogy:novaculite_brick_slab", + "required": false + }, + { + "id": "mineralogy:novaculite_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:rock_salt_slab", + "required": false + }, + { + "id": "mineralogy:rock_salt_smooth_slab", + "required": false + }, + { + "id": "mineralogy:rock_salt_brick_slab", + "required": false + }, + { + "id": "mineralogy:rock_salt_smooth_brick_slab", + "required": false + } + ] +} diff --git a/src/main/resources/data/minecraft/tags/items/stairs.json b/src/main/resources/data/minecraft/tags/items/stairs.json new file mode 100644 index 000000000..b3f94f375 --- /dev/null +++ b/src/main/resources/data/minecraft/tags/items/stairs.json @@ -0,0 +1,437 @@ +{ + "replace": false, + "values": [ + { + "id": "mineralogy:andesite_stairs", + "required": false + }, + { + "id": "mineralogy:andesite_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:andesite_brick_stairs", + "required": false + }, + { + "id": "mineralogy:andesite_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:basalt_stairs", + "required": false + }, + { + "id": "mineralogy:basalt_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:basalt_brick_stairs", + "required": false + }, + { + "id": "mineralogy:basalt_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:diorite_stairs", + "required": false + }, + { + "id": "mineralogy:diorite_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:diorite_brick_stairs", + "required": false + }, + { + "id": "mineralogy:diorite_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:granite_stairs", + "required": false + }, + { + "id": "mineralogy:granite_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:granite_brick_stairs", + "required": false + }, + { + "id": "mineralogy:granite_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:rhyolite_stairs", + "required": false + }, + { + "id": "mineralogy:rhyolite_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:rhyolite_brick_stairs", + "required": false + }, + { + "id": "mineralogy:rhyolite_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:pegmatite_stairs", + "required": false + }, + { + "id": "mineralogy:pegmatite_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:pegmatite_brick_stairs", + "required": false + }, + { + "id": "mineralogy:pegmatite_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:diabase_stairs", + "required": false + }, + { + "id": "mineralogy:diabase_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:diabase_brick_stairs", + "required": false + }, + { + "id": "mineralogy:diabase_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:gabbro_stairs", + "required": false + }, + { + "id": "mineralogy:gabbro_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:gabbro_brick_stairs", + "required": false + }, + { + "id": "mineralogy:gabbro_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:peridotite_stairs", + "required": false + }, + { + "id": "mineralogy:peridotite_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:peridotite_brick_stairs", + "required": false + }, + { + "id": "mineralogy:peridotite_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:basaltic_glass_stairs", + "required": false + }, + { + "id": "mineralogy:basaltic_glass_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:basaltic_glass_brick_stairs", + "required": false + }, + { + "id": "mineralogy:basaltic_glass_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:scoria_stairs", + "required": false + }, + { + "id": "mineralogy:scoria_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:scoria_brick_stairs", + "required": false + }, + { + "id": "mineralogy:scoria_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:tuff_stairs", + "required": false + }, + { + "id": "mineralogy:tuff_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:tuff_brick_stairs", + "required": false + }, + { + "id": "mineralogy:tuff_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:shale_stairs", + "required": false + }, + { + "id": "mineralogy:shale_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:shale_brick_stairs", + "required": false + }, + { + "id": "mineralogy:shale_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:conglomerate_stairs", + "required": false + }, + { + "id": "mineralogy:conglomerate_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:conglomerate_brick_stairs", + "required": false + }, + { + "id": "mineralogy:conglomerate_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:dolomite_stairs", + "required": false + }, + { + "id": "mineralogy:dolomite_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:dolomite_brick_stairs", + "required": false + }, + { + "id": "mineralogy:dolomite_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:limestone_stairs", + "required": false + }, + { + "id": "mineralogy:limestone_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:limestone_brick_stairs", + "required": false + }, + { + "id": "mineralogy:limestone_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:siltstone_stairs", + "required": false + }, + { + "id": "mineralogy:siltstone_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:siltstone_brick_stairs", + "required": false + }, + { + "id": "mineralogy:siltstone_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:marble_stairs", + "required": false + }, + { + "id": "mineralogy:marble_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:marble_brick_stairs", + "required": false + }, + { + "id": "mineralogy:marble_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:slate_stairs", + "required": false + }, + { + "id": "mineralogy:slate_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:slate_brick_stairs", + "required": false + }, + { + "id": "mineralogy:slate_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:schist_stairs", + "required": false + }, + { + "id": "mineralogy:schist_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:schist_brick_stairs", + "required": false + }, + { + "id": "mineralogy:schist_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:gneiss_stairs", + "required": false + }, + { + "id": "mineralogy:gneiss_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:gneiss_brick_stairs", + "required": false + }, + { + "id": "mineralogy:gneiss_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:phyllite_stairs", + "required": false + }, + { + "id": "mineralogy:phyllite_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:phyllite_brick_stairs", + "required": false + }, + { + "id": "mineralogy:phyllite_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:amphibolite_stairs", + "required": false + }, + { + "id": "mineralogy:amphibolite_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:amphibolite_brick_stairs", + "required": false + }, + { + "id": "mineralogy:amphibolite_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:hornfels_stairs", + "required": false + }, + { + "id": "mineralogy:hornfels_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:hornfels_brick_stairs", + "required": false + }, + { + "id": "mineralogy:hornfels_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:quartzite_stairs", + "required": false + }, + { + "id": "mineralogy:quartzite_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:quartzite_brick_stairs", + "required": false + }, + { + "id": "mineralogy:quartzite_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:novaculite_stairs", + "required": false + }, + { + "id": "mineralogy:novaculite_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:novaculite_brick_stairs", + "required": false + }, + { + "id": "mineralogy:novaculite_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:rock_salt_stairs", + "required": false + }, + { + "id": "mineralogy:rock_salt_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:rock_salt_brick_stairs", + "required": false + }, + { + "id": "mineralogy:rock_salt_smooth_brick_stairs", + "required": false + } + ] +} diff --git a/src/main/resources/data/minecraft/tags/items/walls.json b/src/main/resources/data/minecraft/tags/items/walls.json index 8110179a8..a3c943442 100644 --- a/src/main/resources/data/minecraft/tags/items/walls.json +++ b/src/main/resources/data/minecraft/tags/items/walls.json @@ -1,113 +1,437 @@ { "replace": false, "values": [ - "mineralogy:amphibolite_brick_wall", - "mineralogy:amphibolite_smooth_brick_wall", - "mineralogy:amphibolite_smooth_wall", - "mineralogy:amphibolite_wall", - "mineralogy:andesite_brick_wall", - "mineralogy:andesite_smooth_brick_wall", - "mineralogy:andesite_smooth_wall", - "mineralogy:andesite_wall", - "mineralogy:basalt_brick_wall", - "mineralogy:basalt_smooth_brick_wall", - "mineralogy:basalt_smooth_wall", - "mineralogy:basalt_wall", - "mineralogy:basaltic_glass_brick_wall", - "mineralogy:basaltic_glass_smooth_brick_wall", - "mineralogy:basaltic_glass_smooth_wall", - "mineralogy:basaltic_glass_wall", - "mineralogy:conglomerate_brick_wall", - "mineralogy:conglomerate_smooth_brick_wall", - "mineralogy:conglomerate_smooth_wall", - "mineralogy:conglomerate_wall", - "mineralogy:diabase_brick_wall", - "mineralogy:diabase_smooth_brick_wall", - "mineralogy:diabase_smooth_wall", - "mineralogy:diabase_wall", - "mineralogy:diorite_brick_wall", - "mineralogy:diorite_smooth_brick_wall", - "mineralogy:diorite_smooth_wall", - "mineralogy:diorite_wall", - "mineralogy:dolomite_brick_wall", - "mineralogy:dolomite_smooth_brick_wall", - "mineralogy:dolomite_smooth_wall", - "mineralogy:dolomite_wall", - "mineralogy:gabbro_brick_wall", - "mineralogy:gabbro_smooth_brick_wall", - "mineralogy:gabbro_smooth_wall", - "mineralogy:gabbro_wall", - "mineralogy:gneiss_brick_wall", - "mineralogy:gneiss_smooth_brick_wall", - "mineralogy:gneiss_smooth_wall", - "mineralogy:gneiss_wall", - "mineralogy:granite_brick_wall", - "mineralogy:granite_smooth_brick_wall", - "mineralogy:granite_smooth_wall", - "mineralogy:granite_wall", - "mineralogy:hornfels_brick_wall", - "mineralogy:hornfels_smooth_brick_wall", - "mineralogy:hornfels_smooth_wall", - "mineralogy:hornfels_wall", - "mineralogy:limestone_brick_wall", - "mineralogy:limestone_smooth_brick_wall", - "mineralogy:limestone_smooth_wall", - "mineralogy:limestone_wall", - "mineralogy:marble_brick_wall", - "mineralogy:marble_smooth_brick_wall", - "mineralogy:marble_smooth_wall", - "mineralogy:marble_wall", - "mineralogy:novaculite_brick_wall", - "mineralogy:novaculite_smooth_brick_wall", - "mineralogy:novaculite_smooth_wall", - "mineralogy:novaculite_wall", - "mineralogy:pegmatite_brick_wall", - "mineralogy:pegmatite_smooth_brick_wall", - "mineralogy:pegmatite_smooth_wall", - "mineralogy:pegmatite_wall", - "mineralogy:peridotite_brick_wall", - "mineralogy:peridotite_smooth_brick_wall", - "mineralogy:peridotite_smooth_wall", - "mineralogy:peridotite_wall", - "mineralogy:phyllite_brick_wall", - "mineralogy:phyllite_smooth_brick_wall", - "mineralogy:phyllite_smooth_wall", - "mineralogy:phyllite_wall", - "mineralogy:quartzite_brick_wall", - "mineralogy:quartzite_smooth_brick_wall", - "mineralogy:quartzite_smooth_wall", - "mineralogy:quartzite_wall", - "mineralogy:rhyolite_brick_wall", - "mineralogy:rhyolite_smooth_brick_wall", - "mineralogy:rhyolite_smooth_wall", - "mineralogy:rhyolite_wall", - "mineralogy:rock_salt_brick_wall", - "mineralogy:rock_salt_smooth_brick_wall", - "mineralogy:rock_salt_smooth_wall", - "mineralogy:rock_salt_wall", - "mineralogy:schist_brick_wall", - "mineralogy:schist_smooth_brick_wall", - "mineralogy:schist_smooth_wall", - "mineralogy:schist_wall", - "mineralogy:scoria_brick_wall", - "mineralogy:scoria_smooth_brick_wall", - "mineralogy:scoria_smooth_wall", - "mineralogy:scoria_wall", - "mineralogy:shale_brick_wall", - "mineralogy:shale_smooth_brick_wall", - "mineralogy:shale_smooth_wall", - "mineralogy:shale_wall", - "mineralogy:siltstone_brick_wall", - "mineralogy:siltstone_smooth_brick_wall", - "mineralogy:siltstone_smooth_wall", - "mineralogy:siltstone_wall", - "mineralogy:slate_brick_wall", - "mineralogy:slate_smooth_brick_wall", - "mineralogy:slate_smooth_wall", - "mineralogy:slate_wall", - "mineralogy:tuff_brick_wall", - "mineralogy:tuff_smooth_brick_wall", - "mineralogy:tuff_smooth_wall", - "mineralogy:tuff_wall" + { + "id": "mineralogy:andesite_wall", + "required": false + }, + { + "id": "mineralogy:andesite_smooth_wall", + "required": false + }, + { + "id": "mineralogy:andesite_brick_wall", + "required": false + }, + { + "id": "mineralogy:andesite_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:basalt_wall", + "required": false + }, + { + "id": "mineralogy:basalt_smooth_wall", + "required": false + }, + { + "id": "mineralogy:basalt_brick_wall", + "required": false + }, + { + "id": "mineralogy:basalt_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:diorite_wall", + "required": false + }, + { + "id": "mineralogy:diorite_smooth_wall", + "required": false + }, + { + "id": "mineralogy:diorite_brick_wall", + "required": false + }, + { + "id": "mineralogy:diorite_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:granite_wall", + "required": false + }, + { + "id": "mineralogy:granite_smooth_wall", + "required": false + }, + { + "id": "mineralogy:granite_brick_wall", + "required": false + }, + { + "id": "mineralogy:granite_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:rhyolite_wall", + "required": false + }, + { + "id": "mineralogy:rhyolite_smooth_wall", + "required": false + }, + { + "id": "mineralogy:rhyolite_brick_wall", + "required": false + }, + { + "id": "mineralogy:rhyolite_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:pegmatite_wall", + "required": false + }, + { + "id": "mineralogy:pegmatite_smooth_wall", + "required": false + }, + { + "id": "mineralogy:pegmatite_brick_wall", + "required": false + }, + { + "id": "mineralogy:pegmatite_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:diabase_wall", + "required": false + }, + { + "id": "mineralogy:diabase_smooth_wall", + "required": false + }, + { + "id": "mineralogy:diabase_brick_wall", + "required": false + }, + { + "id": "mineralogy:diabase_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:gabbro_wall", + "required": false + }, + { + "id": "mineralogy:gabbro_smooth_wall", + "required": false + }, + { + "id": "mineralogy:gabbro_brick_wall", + "required": false + }, + { + "id": "mineralogy:gabbro_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:peridotite_wall", + "required": false + }, + { + "id": "mineralogy:peridotite_smooth_wall", + "required": false + }, + { + "id": "mineralogy:peridotite_brick_wall", + "required": false + }, + { + "id": "mineralogy:peridotite_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:basaltic_glass_wall", + "required": false + }, + { + "id": "mineralogy:basaltic_glass_smooth_wall", + "required": false + }, + { + "id": "mineralogy:basaltic_glass_brick_wall", + "required": false + }, + { + "id": "mineralogy:basaltic_glass_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:scoria_wall", + "required": false + }, + { + "id": "mineralogy:scoria_smooth_wall", + "required": false + }, + { + "id": "mineralogy:scoria_brick_wall", + "required": false + }, + { + "id": "mineralogy:scoria_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:tuff_wall", + "required": false + }, + { + "id": "mineralogy:tuff_smooth_wall", + "required": false + }, + { + "id": "mineralogy:tuff_brick_wall", + "required": false + }, + { + "id": "mineralogy:tuff_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:shale_wall", + "required": false + }, + { + "id": "mineralogy:shale_smooth_wall", + "required": false + }, + { + "id": "mineralogy:shale_brick_wall", + "required": false + }, + { + "id": "mineralogy:shale_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:conglomerate_wall", + "required": false + }, + { + "id": "mineralogy:conglomerate_smooth_wall", + "required": false + }, + { + "id": "mineralogy:conglomerate_brick_wall", + "required": false + }, + { + "id": "mineralogy:conglomerate_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:dolomite_wall", + "required": false + }, + { + "id": "mineralogy:dolomite_smooth_wall", + "required": false + }, + { + "id": "mineralogy:dolomite_brick_wall", + "required": false + }, + { + "id": "mineralogy:dolomite_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:limestone_wall", + "required": false + }, + { + "id": "mineralogy:limestone_smooth_wall", + "required": false + }, + { + "id": "mineralogy:limestone_brick_wall", + "required": false + }, + { + "id": "mineralogy:limestone_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:siltstone_wall", + "required": false + }, + { + "id": "mineralogy:siltstone_smooth_wall", + "required": false + }, + { + "id": "mineralogy:siltstone_brick_wall", + "required": false + }, + { + "id": "mineralogy:siltstone_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:marble_wall", + "required": false + }, + { + "id": "mineralogy:marble_smooth_wall", + "required": false + }, + { + "id": "mineralogy:marble_brick_wall", + "required": false + }, + { + "id": "mineralogy:marble_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:slate_wall", + "required": false + }, + { + "id": "mineralogy:slate_smooth_wall", + "required": false + }, + { + "id": "mineralogy:slate_brick_wall", + "required": false + }, + { + "id": "mineralogy:slate_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:schist_wall", + "required": false + }, + { + "id": "mineralogy:schist_smooth_wall", + "required": false + }, + { + "id": "mineralogy:schist_brick_wall", + "required": false + }, + { + "id": "mineralogy:schist_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:gneiss_wall", + "required": false + }, + { + "id": "mineralogy:gneiss_smooth_wall", + "required": false + }, + { + "id": "mineralogy:gneiss_brick_wall", + "required": false + }, + { + "id": "mineralogy:gneiss_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:phyllite_wall", + "required": false + }, + { + "id": "mineralogy:phyllite_smooth_wall", + "required": false + }, + { + "id": "mineralogy:phyllite_brick_wall", + "required": false + }, + { + "id": "mineralogy:phyllite_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:amphibolite_wall", + "required": false + }, + { + "id": "mineralogy:amphibolite_smooth_wall", + "required": false + }, + { + "id": "mineralogy:amphibolite_brick_wall", + "required": false + }, + { + "id": "mineralogy:amphibolite_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:hornfels_wall", + "required": false + }, + { + "id": "mineralogy:hornfels_smooth_wall", + "required": false + }, + { + "id": "mineralogy:hornfels_brick_wall", + "required": false + }, + { + "id": "mineralogy:hornfels_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:quartzite_wall", + "required": false + }, + { + "id": "mineralogy:quartzite_smooth_wall", + "required": false + }, + { + "id": "mineralogy:quartzite_brick_wall", + "required": false + }, + { + "id": "mineralogy:quartzite_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:novaculite_wall", + "required": false + }, + { + "id": "mineralogy:novaculite_smooth_wall", + "required": false + }, + { + "id": "mineralogy:novaculite_brick_wall", + "required": false + }, + { + "id": "mineralogy:novaculite_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:rock_salt_wall", + "required": false + }, + { + "id": "mineralogy:rock_salt_smooth_wall", + "required": false + }, + { + "id": "mineralogy:rock_salt_brick_wall", + "required": false + }, + { + "id": "mineralogy:rock_salt_smooth_brick_wall", + "required": false + } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_brick.json b/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_brick.json index e7b2903d5..cdf5664dd 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_brick.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_brick.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:amphibolite_brick" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_brick_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_brick_furnace.json index 1257eea44..5d776de45 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_brick_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_brick_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:amphibolite_brick_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_brick_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_brick_slab.json index f0d55948d..ee81dff82 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_brick_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_brick_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:amphibolite_brick_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_brick_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_brick_stairs.json index 186b2b41f..7672a426a 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_brick_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_brick_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:amphibolite_brick_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_brick_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_brick_wall.json index 50fd282d7..f1404fefc 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_brick_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_brick_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:amphibolite_brick_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_furnace.json index efb2f461a..68c8f3223 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:amphibolite_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_relief_axe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_relief_axe.json index 32d6b70d2..277ff0e25 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_relief_axe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_relief_axe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:amphibolite_relief_axe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_relief_blank.json b/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_relief_blank.json index 0608513e5..cd1d69b16 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_relief_blank.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_relief_blank.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:amphibolite_relief_blank" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_relief_cross.json b/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_relief_cross.json index 59eaaacef..28ff12673 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_relief_cross.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_relief_cross.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:amphibolite_relief_cross" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_relief_hammer.json b/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_relief_hammer.json index e66e2c9d3..a485893c0 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_relief_hammer.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_relief_hammer.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:amphibolite_relief_hammer" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_relief_hoe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_relief_hoe.json index a1832925c..acd4034d7 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_relief_hoe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_relief_hoe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:amphibolite_relief_hoe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_relief_horizontal.json b/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_relief_horizontal.json index 5807720e9..da7bff166 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_relief_horizontal.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_relief_horizontal.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:amphibolite_relief_horizontal" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_relief_i.json b/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_relief_i.json index fd6b0f528..3b6fbbc01 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_relief_i.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_relief_i.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:amphibolite_relief_i" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_relief_left.json b/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_relief_left.json index a1aa9cc66..b4e0cc02c 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_relief_left.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_relief_left.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:amphibolite_relief_left" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_relief_pickaxe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_relief_pickaxe.json index 87c4fea62..86515a204 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_relief_pickaxe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_relief_pickaxe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:amphibolite_relief_pickaxe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_relief_plus.json b/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_relief_plus.json index 93da7e101..0f2134a4f 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_relief_plus.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_relief_plus.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:amphibolite_relief_plus" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_relief_right.json b/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_relief_right.json index d92879d3c..07b1800c6 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_relief_right.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_relief_right.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:amphibolite_relief_right" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_relief_sword.json b/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_relief_sword.json index ae0768b12..df31ea9c9 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_relief_sword.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_relief_sword.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:amphibolite_relief_sword" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_relief_vertical.json b/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_relief_vertical.json index 549bd3e73..dffc8e3d0 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_relief_vertical.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_relief_vertical.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:amphibolite_relief_vertical" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_slab.json index 8d07070d7..901d68fa1 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:amphibolite_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_smooth.json b/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_smooth.json index 64d2e614f..4cf9223c7 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_smooth.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_smooth.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:amphibolite_smooth" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_smooth_brick.json b/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_smooth_brick.json index 0736f6532..20da03d0d 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_smooth_brick.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_smooth_brick.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:amphibolite_smooth_brick" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_smooth_brick_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_smooth_brick_furnace.json index 495cb7e61..c21861d72 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_smooth_brick_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_smooth_brick_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:amphibolite_smooth_brick_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_smooth_brick_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_smooth_brick_slab.json index 98ef7d99f..d42c5f99f 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_smooth_brick_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_smooth_brick_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:amphibolite_smooth_brick_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_smooth_brick_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_smooth_brick_stairs.json index e26f64583..0fc4e10e0 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_smooth_brick_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_smooth_brick_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:amphibolite_smooth_brick_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_smooth_brick_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_smooth_brick_wall.json index cead779d7..4c21a4d4e 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_smooth_brick_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_smooth_brick_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:amphibolite_smooth_brick_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_smooth_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_smooth_furnace.json index 1f3881813..ad3e8dcc6 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_smooth_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_smooth_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:amphibolite_smooth_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_smooth_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_smooth_slab.json index cbf545bb6..c2113d334 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_smooth_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_smooth_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:amphibolite_smooth_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_smooth_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_smooth_stairs.json index 653187817..ce312d83c 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_smooth_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_smooth_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:amphibolite_smooth_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_smooth_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_smooth_wall.json index d12ecd577..7089a49cf 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_smooth_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_smooth_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:amphibolite_smooth_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_stairs.json index 20edd085a..52b38d625 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:amphibolite_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_wall.json index 7d3909aa6..f4ebd9bc0 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/amphibolite_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:amphibolite_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_brick.json b/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_brick.json index eab071d8f..6a1010c6a 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_brick.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_brick.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:andesite_brick" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_brick_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_brick_furnace.json index 8b5d34a89..dce63ad27 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_brick_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_brick_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:andesite_brick_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_brick_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_brick_slab.json index eda37955d..ddc25f801 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_brick_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_brick_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:andesite_brick_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_brick_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_brick_stairs.json index 9679a325c..2b47ac957 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_brick_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_brick_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:andesite_brick_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_brick_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_brick_wall.json index 21be7a833..615408807 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_brick_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_brick_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:andesite_brick_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_furnace.json index 888987486..6f9f3ba61 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:andesite_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_relief_axe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_relief_axe.json index 0d576a966..3b9f2ad12 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_relief_axe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_relief_axe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:andesite_relief_axe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_relief_blank.json b/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_relief_blank.json index e96033e45..f4e8accc1 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_relief_blank.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_relief_blank.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:andesite_relief_blank" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_relief_cross.json b/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_relief_cross.json index 072b54c0e..4d8ed4817 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_relief_cross.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_relief_cross.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:andesite_relief_cross" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_relief_hammer.json b/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_relief_hammer.json index 4e9c457bc..39fd805d9 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_relief_hammer.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_relief_hammer.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:andesite_relief_hammer" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_relief_hoe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_relief_hoe.json index 06396f8c5..080d1d1d0 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_relief_hoe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_relief_hoe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:andesite_relief_hoe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_relief_horizontal.json b/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_relief_horizontal.json index 47fcd635f..fdd528f77 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_relief_horizontal.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_relief_horizontal.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:andesite_relief_horizontal" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_relief_i.json b/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_relief_i.json index 699ae7628..7f2b6f929 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_relief_i.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_relief_i.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:andesite_relief_i" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_relief_left.json b/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_relief_left.json index a8beb13b3..c18dc0755 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_relief_left.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_relief_left.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:andesite_relief_left" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_relief_pickaxe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_relief_pickaxe.json index c78207e58..dd0847ffe 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_relief_pickaxe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_relief_pickaxe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:andesite_relief_pickaxe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_relief_plus.json b/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_relief_plus.json index aa49bdc6c..933fc578e 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_relief_plus.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_relief_plus.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:andesite_relief_plus" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_relief_right.json b/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_relief_right.json index 33bf19651..e325f6556 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_relief_right.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_relief_right.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:andesite_relief_right" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_relief_sword.json b/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_relief_sword.json index 087225d3e..79f911610 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_relief_sword.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_relief_sword.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:andesite_relief_sword" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_relief_vertical.json b/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_relief_vertical.json index a2a1b5cec..153f5fed9 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_relief_vertical.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_relief_vertical.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:andesite_relief_vertical" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_slab.json index 7b66885e4..f421e165f 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:andesite_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_smooth.json b/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_smooth.json index 231a8a9b5..920c81dad 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_smooth.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_smooth.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:andesite_smooth" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_smooth_brick.json b/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_smooth_brick.json index 8d0a15e9e..19af54621 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_smooth_brick.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_smooth_brick.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:andesite_smooth_brick" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_smooth_brick_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_smooth_brick_furnace.json index 2d5b682a9..4127fe908 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_smooth_brick_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_smooth_brick_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:andesite_smooth_brick_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_smooth_brick_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_smooth_brick_slab.json index c2e9ea109..fc76be34c 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_smooth_brick_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_smooth_brick_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:andesite_smooth_brick_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_smooth_brick_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_smooth_brick_stairs.json index c80f13eec..7fa0e56c2 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_smooth_brick_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_smooth_brick_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:andesite_smooth_brick_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_smooth_brick_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_smooth_brick_wall.json index d0842ad01..f3f86ceec 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_smooth_brick_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_smooth_brick_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:andesite_smooth_brick_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_smooth_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_smooth_furnace.json index 9946416b2..762173f67 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_smooth_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_smooth_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:andesite_smooth_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_smooth_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_smooth_slab.json index 6ed876df5..3f1b484cd 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_smooth_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_smooth_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:andesite_smooth_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_smooth_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_smooth_stairs.json index 4ad23181f..f23304a8c 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_smooth_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_smooth_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:andesite_smooth_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_smooth_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_smooth_wall.json index 97a126ece..3c186d426 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_smooth_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_smooth_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:andesite_smooth_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_stairs.json index 1f229acdd..e686064a5 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:andesite_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_wall.json index 3b192b985..dcb7e9bb8 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/andesite_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:andesite_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_brick.json b/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_brick.json index 23ce2f14b..e7ccac941 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_brick.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_brick.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:basalt_brick" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_brick_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_brick_furnace.json index 419cb17ca..c591f473f 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_brick_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_brick_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:basalt_brick_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_brick_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_brick_slab.json index c24c77b33..d44a2e547 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_brick_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_brick_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:basalt_brick_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_brick_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_brick_stairs.json index dc6cba235..16705031d 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_brick_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_brick_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:basalt_brick_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_brick_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_brick_wall.json index 1ba42f359..0f994779b 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_brick_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_brick_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:basalt_brick_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_furnace.json index 58993321b..68751bef9 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:basalt_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_relief_axe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_relief_axe.json index 7ea5fef26..c6d36ceec 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_relief_axe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_relief_axe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:basalt_relief_axe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_relief_blank.json b/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_relief_blank.json index 68b969e92..3e920b241 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_relief_blank.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_relief_blank.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:basalt_relief_blank" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_relief_cross.json b/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_relief_cross.json index 655484e5d..db1344a5d 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_relief_cross.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_relief_cross.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:basalt_relief_cross" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_relief_hammer.json b/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_relief_hammer.json index f99e9caf4..66780e8a2 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_relief_hammer.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_relief_hammer.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:basalt_relief_hammer" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_relief_hoe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_relief_hoe.json index df5dc8f0e..43a62a8b9 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_relief_hoe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_relief_hoe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:basalt_relief_hoe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_relief_horizontal.json b/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_relief_horizontal.json index a62b78e98..c2cc6ba85 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_relief_horizontal.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_relief_horizontal.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:basalt_relief_horizontal" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_relief_i.json b/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_relief_i.json index b799f96f0..4e020485e 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_relief_i.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_relief_i.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:basalt_relief_i" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_relief_left.json b/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_relief_left.json index bb0905168..69dc2ba39 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_relief_left.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_relief_left.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:basalt_relief_left" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_relief_pickaxe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_relief_pickaxe.json index 5f97385b8..94fd0c162 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_relief_pickaxe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_relief_pickaxe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:basalt_relief_pickaxe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_relief_plus.json b/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_relief_plus.json index 8b40f8dfe..b2001b0cc 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_relief_plus.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_relief_plus.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:basalt_relief_plus" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_relief_right.json b/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_relief_right.json index 77721d152..7001814c1 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_relief_right.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_relief_right.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:basalt_relief_right" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_relief_sword.json b/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_relief_sword.json index d8f49fd97..ec4c3ca8a 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_relief_sword.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_relief_sword.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:basalt_relief_sword" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_relief_vertical.json b/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_relief_vertical.json index b44100198..c3f6a5132 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_relief_vertical.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_relief_vertical.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:basalt_relief_vertical" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_slab.json index dddf8bc01..940a6bcde 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:basalt_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_smooth.json b/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_smooth.json index 88891274b..dea9fdac9 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_smooth.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_smooth.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:basalt_smooth" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_smooth_brick.json b/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_smooth_brick.json index 919959da2..e42d1b3d4 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_smooth_brick.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_smooth_brick.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:basalt_smooth_brick" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_smooth_brick_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_smooth_brick_furnace.json index d2b067bc8..63e207192 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_smooth_brick_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_smooth_brick_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:basalt_smooth_brick_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_smooth_brick_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_smooth_brick_slab.json index 7a12fc2c4..21f895434 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_smooth_brick_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_smooth_brick_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:basalt_smooth_brick_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_smooth_brick_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_smooth_brick_stairs.json index f4b390471..65ad4156b 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_smooth_brick_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_smooth_brick_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:basalt_smooth_brick_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_smooth_brick_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_smooth_brick_wall.json index 7d36f7559..ede4322ca 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_smooth_brick_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_smooth_brick_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:basalt_smooth_brick_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_smooth_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_smooth_furnace.json index 0b0ee5fde..eb8354f9e 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_smooth_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_smooth_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:basalt_smooth_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_smooth_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_smooth_slab.json index 64323422a..54a5c6eac 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_smooth_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_smooth_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:basalt_smooth_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_smooth_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_smooth_stairs.json index 574b7a788..0ee98d309 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_smooth_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_smooth_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:basalt_smooth_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_smooth_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_smooth_wall.json index 9d1721a15..2a09ca3df 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_smooth_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_smooth_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:basalt_smooth_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_stairs.json index 704505d60..0e529a10e 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:basalt_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_wall.json index 4f68f82e5..de6923b79 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/basalt_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:basalt_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_brick.json b/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_brick.json index 3a4ee6152..3332f1ecb 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_brick.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_brick.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:basaltic_glass_brick" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_brick_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_brick_furnace.json index 2b2455d9d..1c99f2c45 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_brick_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_brick_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:basaltic_glass_brick_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_brick_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_brick_slab.json index 40d8c3a52..00fa42cd7 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_brick_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_brick_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:basaltic_glass_brick_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_brick_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_brick_stairs.json index 4afd6937c..2c8d213e3 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_brick_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_brick_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:basaltic_glass_brick_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_brick_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_brick_wall.json index 3126f37c5..55505232c 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_brick_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_brick_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:basaltic_glass_brick_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_furnace.json index 4342f20c0..e4945428f 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:basaltic_glass_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_relief_axe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_relief_axe.json index c3c7e2b5e..d22a573bc 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_relief_axe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_relief_axe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:basaltic_glass_relief_axe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_relief_blank.json b/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_relief_blank.json index eb258c5b4..5e7d0f466 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_relief_blank.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_relief_blank.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:basaltic_glass_relief_blank" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_relief_cross.json b/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_relief_cross.json index 2a2211481..dab887726 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_relief_cross.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_relief_cross.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:basaltic_glass_relief_cross" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_relief_hammer.json b/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_relief_hammer.json index 6f12ab4f4..89a6418f0 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_relief_hammer.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_relief_hammer.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:basaltic_glass_relief_hammer" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_relief_hoe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_relief_hoe.json index 05da411c0..91329a59b 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_relief_hoe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_relief_hoe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:basaltic_glass_relief_hoe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_relief_horizontal.json b/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_relief_horizontal.json index e832048fd..6224d0d14 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_relief_horizontal.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_relief_horizontal.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:basaltic_glass_relief_horizontal" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_relief_i.json b/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_relief_i.json index 30b37a9bc..e4bd3a6d2 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_relief_i.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_relief_i.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:basaltic_glass_relief_i" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_relief_left.json b/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_relief_left.json index 62457e48a..315d333f7 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_relief_left.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_relief_left.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:basaltic_glass_relief_left" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_relief_pickaxe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_relief_pickaxe.json index 6021aeecf..25e7bd404 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_relief_pickaxe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_relief_pickaxe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:basaltic_glass_relief_pickaxe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_relief_plus.json b/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_relief_plus.json index 9f4ff3a78..80958d6ca 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_relief_plus.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_relief_plus.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:basaltic_glass_relief_plus" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_relief_right.json b/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_relief_right.json index bb4c9f70d..11d20986e 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_relief_right.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_relief_right.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:basaltic_glass_relief_right" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_relief_sword.json b/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_relief_sword.json index c28787421..7f6970887 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_relief_sword.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_relief_sword.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:basaltic_glass_relief_sword" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_relief_vertical.json b/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_relief_vertical.json index 054eebb28..5f64f83ae 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_relief_vertical.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_relief_vertical.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:basaltic_glass_relief_vertical" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_slab.json index 5bb547857..d2bd4927f 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:basaltic_glass_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_smooth.json b/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_smooth.json index 765706fe3..8e11209e2 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_smooth.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_smooth.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:basaltic_glass_smooth" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_smooth_brick.json b/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_smooth_brick.json index 143cb3546..7bbae42de 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_smooth_brick.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_smooth_brick.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:basaltic_glass_smooth_brick" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_smooth_brick_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_smooth_brick_furnace.json index 99d96f1e8..cb2b1e783 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_smooth_brick_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_smooth_brick_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:basaltic_glass_smooth_brick_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_smooth_brick_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_smooth_brick_slab.json index c63d62ec0..f32711172 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_smooth_brick_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_smooth_brick_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:basaltic_glass_smooth_brick_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_smooth_brick_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_smooth_brick_stairs.json index 8de83ac3d..62002de53 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_smooth_brick_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_smooth_brick_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:basaltic_glass_smooth_brick_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_smooth_brick_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_smooth_brick_wall.json index 95072f987..9d761afb2 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_smooth_brick_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_smooth_brick_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:basaltic_glass_smooth_brick_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_smooth_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_smooth_furnace.json index 7c1308663..ccc6ded63 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_smooth_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_smooth_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:basaltic_glass_smooth_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_smooth_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_smooth_slab.json index 53983bc9c..ef97edbe1 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_smooth_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_smooth_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:basaltic_glass_smooth_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_smooth_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_smooth_stairs.json index b9675e51d..470db7e8e 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_smooth_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_smooth_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:basaltic_glass_smooth_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_smooth_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_smooth_wall.json index 807bbc25a..cd8624b37 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_smooth_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_smooth_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:basaltic_glass_smooth_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_stairs.json index 09aa3bf30..e2e22dd7b 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:basaltic_glass_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_wall.json index cecdccf09..38f7ae030 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/basaltic_glass_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:basaltic_glass_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_brick.json b/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_brick.json index 072c85c66..7f0967f0a 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_brick.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_brick.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:conglomerate_brick" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_brick_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_brick_furnace.json index 3ab4d6ba3..c57ce0730 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_brick_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_brick_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:conglomerate_brick_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_brick_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_brick_slab.json index 8837f0c78..c789422a1 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_brick_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_brick_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:conglomerate_brick_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_brick_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_brick_stairs.json index 38be8f9c8..fd0aa23f6 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_brick_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_brick_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:conglomerate_brick_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_brick_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_brick_wall.json index cd14701ce..919e1a775 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_brick_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_brick_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:conglomerate_brick_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_furnace.json index 8b61e556a..7e21089d8 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:conglomerate_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_relief_axe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_relief_axe.json index 5b528a602..16b2ec1fc 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_relief_axe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_relief_axe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:conglomerate_relief_axe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_relief_blank.json b/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_relief_blank.json index 9e88f38b5..9991ca7d4 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_relief_blank.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_relief_blank.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:conglomerate_relief_blank" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_relief_cross.json b/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_relief_cross.json index 053eab4a4..3e1e83eca 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_relief_cross.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_relief_cross.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:conglomerate_relief_cross" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_relief_hammer.json b/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_relief_hammer.json index 469d3a7be..cbd8e77fc 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_relief_hammer.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_relief_hammer.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:conglomerate_relief_hammer" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_relief_hoe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_relief_hoe.json index 921f7bb90..ac6b92e1b 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_relief_hoe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_relief_hoe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:conglomerate_relief_hoe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_relief_horizontal.json b/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_relief_horizontal.json index dcdc8dbc6..c23c5d5a7 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_relief_horizontal.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_relief_horizontal.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:conglomerate_relief_horizontal" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_relief_i.json b/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_relief_i.json index 19fb80f28..c7d7dff91 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_relief_i.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_relief_i.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:conglomerate_relief_i" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_relief_left.json b/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_relief_left.json index b25b6e2fc..8936516c0 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_relief_left.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_relief_left.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:conglomerate_relief_left" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_relief_pickaxe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_relief_pickaxe.json index 11f9d3151..2e80a93ab 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_relief_pickaxe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_relief_pickaxe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:conglomerate_relief_pickaxe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_relief_plus.json b/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_relief_plus.json index f8e145e3a..6a9007106 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_relief_plus.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_relief_plus.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:conglomerate_relief_plus" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_relief_right.json b/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_relief_right.json index 0b418313a..47be3789f 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_relief_right.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_relief_right.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:conglomerate_relief_right" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_relief_sword.json b/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_relief_sword.json index 7489f0a6b..8afa7d9ee 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_relief_sword.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_relief_sword.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:conglomerate_relief_sword" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_relief_vertical.json b/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_relief_vertical.json index fa1e2525c..03007a076 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_relief_vertical.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_relief_vertical.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:conglomerate_relief_vertical" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_slab.json index dfdc83027..9ce7f2626 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:conglomerate_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_smooth.json b/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_smooth.json index 982a60c5c..ba09f6028 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_smooth.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_smooth.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:conglomerate_smooth" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_smooth_brick.json b/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_smooth_brick.json index 3539e9d54..bdfa7ac08 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_smooth_brick.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_smooth_brick.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:conglomerate_smooth_brick" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_smooth_brick_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_smooth_brick_furnace.json index df08cacee..141b0a1fd 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_smooth_brick_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_smooth_brick_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:conglomerate_smooth_brick_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_smooth_brick_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_smooth_brick_slab.json index b82304fa3..9e434de70 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_smooth_brick_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_smooth_brick_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:conglomerate_smooth_brick_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_smooth_brick_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_smooth_brick_stairs.json index d2ca33191..a7359ba79 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_smooth_brick_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_smooth_brick_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:conglomerate_smooth_brick_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_smooth_brick_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_smooth_brick_wall.json index 02c732f31..2405fb61b 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_smooth_brick_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_smooth_brick_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:conglomerate_smooth_brick_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_smooth_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_smooth_furnace.json index 355afb496..d5fa35fe1 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_smooth_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_smooth_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:conglomerate_smooth_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_smooth_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_smooth_slab.json index 0a52ab25d..8e8c3ab4f 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_smooth_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_smooth_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:conglomerate_smooth_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_smooth_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_smooth_stairs.json index a687a45b1..cf4a63c4d 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_smooth_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_smooth_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:conglomerate_smooth_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_smooth_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_smooth_wall.json index b04282604..5c93736de 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_smooth_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_smooth_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:conglomerate_smooth_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_stairs.json index 51a01a594..c4ad27172 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:conglomerate_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_wall.json index ddcf60c8c..5e363c1d9 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/conglomerate_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:conglomerate_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_brick.json b/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_brick.json index 31bf4d95d..e5850880b 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_brick.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_brick.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:diabase_brick" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_brick_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_brick_furnace.json index f1148dde0..be2e22ecd 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_brick_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_brick_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:diabase_brick_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_brick_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_brick_slab.json index 4430e95ea..911776796 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_brick_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_brick_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:diabase_brick_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_brick_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_brick_stairs.json index 18815f2b4..2f7c6fa26 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_brick_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_brick_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:diabase_brick_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_brick_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_brick_wall.json index f6891644c..b2c24f0ee 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_brick_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_brick_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:diabase_brick_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_furnace.json index b3c43e87e..835047a33 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:diabase_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_relief_axe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_relief_axe.json index 3927ffd43..5af6e4340 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_relief_axe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_relief_axe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:diabase_relief_axe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_relief_blank.json b/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_relief_blank.json index 7c8144e72..74905fd2d 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_relief_blank.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_relief_blank.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:diabase_relief_blank" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_relief_cross.json b/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_relief_cross.json index 4b301c393..7a03f3206 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_relief_cross.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_relief_cross.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:diabase_relief_cross" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_relief_hammer.json b/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_relief_hammer.json index 9389940c2..ced7ccd55 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_relief_hammer.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_relief_hammer.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:diabase_relief_hammer" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_relief_hoe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_relief_hoe.json index f74dd48e3..51e7ab5ef 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_relief_hoe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_relief_hoe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:diabase_relief_hoe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_relief_horizontal.json b/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_relief_horizontal.json index d0c112ec4..57307ab89 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_relief_horizontal.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_relief_horizontal.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:diabase_relief_horizontal" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_relief_i.json b/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_relief_i.json index ad1125989..3ad34afb7 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_relief_i.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_relief_i.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:diabase_relief_i" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_relief_left.json b/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_relief_left.json index efd311d36..ab82b8b65 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_relief_left.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_relief_left.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:diabase_relief_left" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_relief_pickaxe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_relief_pickaxe.json index 12941e523..d399e2d78 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_relief_pickaxe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_relief_pickaxe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:diabase_relief_pickaxe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_relief_plus.json b/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_relief_plus.json index baaf3a217..dc72ec4c9 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_relief_plus.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_relief_plus.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:diabase_relief_plus" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_relief_right.json b/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_relief_right.json index b7b214e6e..b06b1dfbf 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_relief_right.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_relief_right.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:diabase_relief_right" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_relief_sword.json b/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_relief_sword.json index 84c19a986..a0a2ea7b2 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_relief_sword.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_relief_sword.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:diabase_relief_sword" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_relief_vertical.json b/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_relief_vertical.json index 61beba904..ea9eefa17 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_relief_vertical.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_relief_vertical.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:diabase_relief_vertical" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_slab.json index 26b1c32ef..cb1b5f575 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:diabase_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_smooth.json b/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_smooth.json index f1aacc546..66e4403cf 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_smooth.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_smooth.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:diabase_smooth" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_smooth_brick.json b/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_smooth_brick.json index 41eca531d..d7f352ed9 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_smooth_brick.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_smooth_brick.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:diabase_smooth_brick" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_smooth_brick_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_smooth_brick_furnace.json index 461047555..82c8a102a 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_smooth_brick_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_smooth_brick_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:diabase_smooth_brick_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_smooth_brick_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_smooth_brick_slab.json index d4e9cfbd7..879f7d75f 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_smooth_brick_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_smooth_brick_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:diabase_smooth_brick_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_smooth_brick_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_smooth_brick_stairs.json index b3c834beb..d730e22a1 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_smooth_brick_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_smooth_brick_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:diabase_smooth_brick_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_smooth_brick_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_smooth_brick_wall.json index ff15b59f6..fe8e35c2a 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_smooth_brick_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_smooth_brick_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:diabase_smooth_brick_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_smooth_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_smooth_furnace.json index 83f31530b..a80e39837 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_smooth_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_smooth_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:diabase_smooth_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_smooth_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_smooth_slab.json index fb03992d0..152c1921c 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_smooth_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_smooth_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:diabase_smooth_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_smooth_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_smooth_stairs.json index 4f5a92918..6f0142485 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_smooth_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_smooth_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:diabase_smooth_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_smooth_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_smooth_wall.json index d8ffd327f..7781479e8 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_smooth_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_smooth_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:diabase_smooth_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_stairs.json index 27d9c382d..26b8bee19 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:diabase_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_wall.json index 1117859c9..2470eed12 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/diabase_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:diabase_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_brick.json b/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_brick.json index 86bcae562..2df3a8161 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_brick.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_brick.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:diorite_brick" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_brick_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_brick_furnace.json index 0156a3c01..1ab2d4e65 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_brick_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_brick_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:diorite_brick_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_brick_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_brick_slab.json index 072e0bb19..d251240b2 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_brick_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_brick_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:diorite_brick_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_brick_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_brick_stairs.json index b8096d483..f01838627 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_brick_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_brick_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:diorite_brick_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_brick_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_brick_wall.json index a8d1c0438..992179536 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_brick_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_brick_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:diorite_brick_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_furnace.json index ab688e981..2161920d3 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:diorite_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_relief_axe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_relief_axe.json index d337fe472..57ee709f0 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_relief_axe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_relief_axe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:diorite_relief_axe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_relief_blank.json b/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_relief_blank.json index 83a21f01a..429032934 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_relief_blank.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_relief_blank.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:diorite_relief_blank" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_relief_cross.json b/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_relief_cross.json index eb8959873..469eca933 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_relief_cross.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_relief_cross.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:diorite_relief_cross" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_relief_hammer.json b/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_relief_hammer.json index 68faeaaed..8349be471 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_relief_hammer.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_relief_hammer.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:diorite_relief_hammer" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_relief_hoe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_relief_hoe.json index 947d8317a..6642adc03 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_relief_hoe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_relief_hoe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:diorite_relief_hoe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_relief_horizontal.json b/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_relief_horizontal.json index 6180a44f0..9634a8c0f 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_relief_horizontal.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_relief_horizontal.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:diorite_relief_horizontal" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_relief_i.json b/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_relief_i.json index 9f32c1752..523743edc 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_relief_i.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_relief_i.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:diorite_relief_i" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_relief_left.json b/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_relief_left.json index 6e1ab70eb..5d662d0a5 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_relief_left.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_relief_left.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:diorite_relief_left" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_relief_pickaxe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_relief_pickaxe.json index daf83d3bd..b19283130 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_relief_pickaxe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_relief_pickaxe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:diorite_relief_pickaxe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_relief_plus.json b/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_relief_plus.json index 1da30cf27..215ba614a 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_relief_plus.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_relief_plus.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:diorite_relief_plus" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_relief_right.json b/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_relief_right.json index 6e591aa32..97a70ba2c 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_relief_right.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_relief_right.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:diorite_relief_right" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_relief_sword.json b/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_relief_sword.json index cfb316df0..1b603d160 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_relief_sword.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_relief_sword.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:diorite_relief_sword" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_relief_vertical.json b/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_relief_vertical.json index 16d506d59..eeb433665 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_relief_vertical.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_relief_vertical.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:diorite_relief_vertical" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_slab.json index 576878a06..0250d7e4b 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:diorite_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_smooth.json b/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_smooth.json index 1fe731274..bf267c7ed 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_smooth.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_smooth.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:diorite_smooth" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_smooth_brick.json b/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_smooth_brick.json index cc91447fd..a11c6d688 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_smooth_brick.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_smooth_brick.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:diorite_smooth_brick" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_smooth_brick_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_smooth_brick_furnace.json index 2e5d9ddac..7124befd5 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_smooth_brick_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_smooth_brick_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:diorite_smooth_brick_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_smooth_brick_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_smooth_brick_slab.json index a25db63c2..bdd2a0705 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_smooth_brick_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_smooth_brick_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:diorite_smooth_brick_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_smooth_brick_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_smooth_brick_stairs.json index dc5d6367b..54841bc40 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_smooth_brick_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_smooth_brick_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:diorite_smooth_brick_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_smooth_brick_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_smooth_brick_wall.json index 649583230..f4106cb2f 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_smooth_brick_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_smooth_brick_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:diorite_smooth_brick_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_smooth_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_smooth_furnace.json index 3a968506a..73d45bf1c 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_smooth_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_smooth_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:diorite_smooth_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_smooth_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_smooth_slab.json index a705377cd..634b5b323 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_smooth_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_smooth_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:diorite_smooth_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_smooth_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_smooth_stairs.json index 4bd14deeb..58c5bc0ef 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_smooth_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_smooth_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:diorite_smooth_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_smooth_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_smooth_wall.json index e112af4b8..5336af18a 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_smooth_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_smooth_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:diorite_smooth_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_stairs.json index 151600d6a..2044b2204 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:diorite_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_wall.json index e4b163f7e..8011f553e 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/diorite_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:diorite_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_brick.json b/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_brick.json index 8738b47bc..45859f031 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_brick.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_brick.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:dolomite_brick" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_brick_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_brick_furnace.json index 6de9b42ae..c38d92102 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_brick_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_brick_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:dolomite_brick_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_brick_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_brick_slab.json index 882f185af..6167c88b0 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_brick_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_brick_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:dolomite_brick_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_brick_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_brick_stairs.json index 547746758..c3c646705 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_brick_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_brick_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:dolomite_brick_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_brick_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_brick_wall.json index 155058df0..a7373c742 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_brick_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_brick_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:dolomite_brick_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_furnace.json index 25702b098..b62d81491 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:dolomite_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_relief_axe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_relief_axe.json index 004535907..73f4160f1 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_relief_axe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_relief_axe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:dolomite_relief_axe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_relief_blank.json b/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_relief_blank.json index facfc68bd..bd380abc0 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_relief_blank.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_relief_blank.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:dolomite_relief_blank" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_relief_cross.json b/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_relief_cross.json index 746a72ae7..55935abe4 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_relief_cross.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_relief_cross.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:dolomite_relief_cross" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_relief_hammer.json b/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_relief_hammer.json index 84cab1569..9ac7c863c 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_relief_hammer.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_relief_hammer.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:dolomite_relief_hammer" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_relief_hoe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_relief_hoe.json index c06a45143..b5172fabd 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_relief_hoe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_relief_hoe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:dolomite_relief_hoe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_relief_horizontal.json b/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_relief_horizontal.json index 9de2b777e..2d2582145 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_relief_horizontal.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_relief_horizontal.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:dolomite_relief_horizontal" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_relief_i.json b/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_relief_i.json index e71dc7a01..f57fdd23f 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_relief_i.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_relief_i.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:dolomite_relief_i" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_relief_left.json b/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_relief_left.json index c3a5b70e4..1b75221d9 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_relief_left.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_relief_left.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:dolomite_relief_left" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_relief_pickaxe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_relief_pickaxe.json index 18278e860..aa819931e 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_relief_pickaxe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_relief_pickaxe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:dolomite_relief_pickaxe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_relief_plus.json b/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_relief_plus.json index 50ec68ffe..26e131e6a 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_relief_plus.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_relief_plus.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:dolomite_relief_plus" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_relief_right.json b/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_relief_right.json index 37bb59eb8..50fac1cbd 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_relief_right.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_relief_right.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:dolomite_relief_right" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_relief_sword.json b/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_relief_sword.json index c343f09da..378bc16ea 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_relief_sword.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_relief_sword.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:dolomite_relief_sword" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_relief_vertical.json b/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_relief_vertical.json index 583be5b4f..8df7f354f 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_relief_vertical.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_relief_vertical.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:dolomite_relief_vertical" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_slab.json index d59cf984f..65491852f 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:dolomite_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_smooth.json b/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_smooth.json index ee8b54775..7118e749b 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_smooth.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_smooth.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:dolomite_smooth" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_smooth_brick.json b/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_smooth_brick.json index f847158e6..be25457cd 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_smooth_brick.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_smooth_brick.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:dolomite_smooth_brick" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_smooth_brick_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_smooth_brick_furnace.json index e3746cc60..35e7c7556 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_smooth_brick_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_smooth_brick_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:dolomite_smooth_brick_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_smooth_brick_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_smooth_brick_slab.json index 1a9b91d43..f28a48439 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_smooth_brick_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_smooth_brick_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:dolomite_smooth_brick_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_smooth_brick_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_smooth_brick_stairs.json index 727cd2c9b..654c9b4b0 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_smooth_brick_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_smooth_brick_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:dolomite_smooth_brick_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_smooth_brick_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_smooth_brick_wall.json index 13d7d1163..0bf2f8ed6 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_smooth_brick_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_smooth_brick_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:dolomite_smooth_brick_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_smooth_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_smooth_furnace.json index 204a2a78a..48964ce64 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_smooth_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_smooth_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:dolomite_smooth_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_smooth_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_smooth_slab.json index 6c1d7ca4a..5ac4622a3 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_smooth_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_smooth_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:dolomite_smooth_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_smooth_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_smooth_stairs.json index a2408488d..7621b9815 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_smooth_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_smooth_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:dolomite_smooth_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_smooth_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_smooth_wall.json index 04f6f9a7d..69e1714be 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_smooth_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_smooth_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:dolomite_smooth_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_stairs.json index dc8039f84..012fad467 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:dolomite_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_wall.json index 71fdc683e..d78c2c74e 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/dolomite_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:dolomite_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_brick.json b/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_brick.json index 5511dc4eb..2680dba2a 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_brick.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_brick.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:gabbro_brick" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_brick_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_brick_furnace.json index 860a7e42a..a1422d88e 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_brick_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_brick_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:gabbro_brick_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_brick_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_brick_slab.json index 1642f4495..669f463c7 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_brick_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_brick_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:gabbro_brick_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_brick_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_brick_stairs.json index 097d1a006..6c31458f1 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_brick_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_brick_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:gabbro_brick_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_brick_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_brick_wall.json index 38c15b8ea..7877e3656 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_brick_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_brick_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:gabbro_brick_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_furnace.json index f4b5c23e0..53d631f89 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:gabbro_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_relief_axe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_relief_axe.json index 6fc98fb3b..07291d275 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_relief_axe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_relief_axe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:gabbro_relief_axe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_relief_blank.json b/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_relief_blank.json index 83f5e40b3..b24597323 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_relief_blank.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_relief_blank.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:gabbro_relief_blank" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_relief_cross.json b/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_relief_cross.json index aec5d6f0b..cb5a637e4 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_relief_cross.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_relief_cross.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:gabbro_relief_cross" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_relief_hammer.json b/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_relief_hammer.json index f4735e95c..16d9d9fe5 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_relief_hammer.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_relief_hammer.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:gabbro_relief_hammer" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_relief_hoe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_relief_hoe.json index 19d23120b..deac76723 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_relief_hoe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_relief_hoe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:gabbro_relief_hoe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_relief_horizontal.json b/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_relief_horizontal.json index 08c832870..a41f8937a 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_relief_horizontal.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_relief_horizontal.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:gabbro_relief_horizontal" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_relief_i.json b/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_relief_i.json index 6334e3f42..7df6089c0 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_relief_i.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_relief_i.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:gabbro_relief_i" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_relief_left.json b/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_relief_left.json index 2208a8d1d..471655b85 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_relief_left.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_relief_left.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:gabbro_relief_left" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_relief_pickaxe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_relief_pickaxe.json index c014290af..1257cf378 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_relief_pickaxe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_relief_pickaxe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:gabbro_relief_pickaxe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_relief_plus.json b/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_relief_plus.json index 1a83ac9ea..61cb7f75d 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_relief_plus.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_relief_plus.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:gabbro_relief_plus" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_relief_right.json b/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_relief_right.json index a77b86d91..2c884e715 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_relief_right.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_relief_right.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:gabbro_relief_right" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_relief_sword.json b/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_relief_sword.json index 4e76714dc..8093b143e 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_relief_sword.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_relief_sword.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:gabbro_relief_sword" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_relief_vertical.json b/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_relief_vertical.json index d5be1611a..ddf578744 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_relief_vertical.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_relief_vertical.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:gabbro_relief_vertical" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_slab.json index da9107027..23581e0eb 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:gabbro_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_smooth.json b/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_smooth.json index 119fe995e..c0fd0e97f 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_smooth.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_smooth.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:gabbro_smooth" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_smooth_brick.json b/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_smooth_brick.json index b38027e02..9867ad40b 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_smooth_brick.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_smooth_brick.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:gabbro_smooth_brick" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_smooth_brick_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_smooth_brick_furnace.json index 9a8dbf3c6..93d9e070d 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_smooth_brick_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_smooth_brick_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:gabbro_smooth_brick_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_smooth_brick_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_smooth_brick_slab.json index 36d5d73a4..e6120f12c 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_smooth_brick_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_smooth_brick_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:gabbro_smooth_brick_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_smooth_brick_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_smooth_brick_stairs.json index 4ec5a55fb..e0e410297 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_smooth_brick_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_smooth_brick_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:gabbro_smooth_brick_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_smooth_brick_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_smooth_brick_wall.json index fb2319d99..7f3963cb3 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_smooth_brick_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_smooth_brick_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:gabbro_smooth_brick_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_smooth_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_smooth_furnace.json index 9529abbd5..64fdc2b15 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_smooth_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_smooth_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:gabbro_smooth_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_smooth_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_smooth_slab.json index 69b3f383e..e0e9a98ac 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_smooth_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_smooth_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:gabbro_smooth_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_smooth_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_smooth_stairs.json index 8d466770f..879775bcd 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_smooth_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_smooth_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:gabbro_smooth_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_smooth_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_smooth_wall.json index 59f283d15..74a0bd2ba 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_smooth_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_smooth_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:gabbro_smooth_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_stairs.json index 83342da23..f154b3ad0 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:gabbro_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_wall.json index 733d86b03..b670eee01 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/gabbro_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:gabbro_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_brick.json b/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_brick.json index cf7912257..ccd4e0376 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_brick.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_brick.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:gneiss_brick" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_brick_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_brick_furnace.json index fbae3b12a..79ba3e1f2 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_brick_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_brick_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:gneiss_brick_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_brick_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_brick_slab.json index c851a384f..cbd6ed69d 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_brick_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_brick_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:gneiss_brick_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_brick_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_brick_stairs.json index 9bad2f919..f3cce94bb 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_brick_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_brick_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:gneiss_brick_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_brick_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_brick_wall.json index bf23da5d6..8e70583d3 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_brick_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_brick_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:gneiss_brick_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_furnace.json index 3466d00a6..d2eaa47b0 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:gneiss_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_relief_axe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_relief_axe.json index 32b8878bc..f467569ea 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_relief_axe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_relief_axe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:gneiss_relief_axe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_relief_blank.json b/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_relief_blank.json index c0d84b704..1bdaaaba2 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_relief_blank.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_relief_blank.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:gneiss_relief_blank" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_relief_cross.json b/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_relief_cross.json index f995aa58a..b4d30725a 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_relief_cross.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_relief_cross.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:gneiss_relief_cross" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_relief_hammer.json b/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_relief_hammer.json index 1b71c5fc9..1633ed532 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_relief_hammer.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_relief_hammer.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:gneiss_relief_hammer" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_relief_hoe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_relief_hoe.json index c0a1e393d..de35e488b 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_relief_hoe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_relief_hoe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:gneiss_relief_hoe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_relief_horizontal.json b/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_relief_horizontal.json index 84ee7f779..ed0b71fb1 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_relief_horizontal.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_relief_horizontal.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:gneiss_relief_horizontal" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_relief_i.json b/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_relief_i.json index 51a6c3a46..de219f86b 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_relief_i.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_relief_i.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:gneiss_relief_i" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_relief_left.json b/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_relief_left.json index 6bc7fc432..311881dc6 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_relief_left.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_relief_left.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:gneiss_relief_left" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_relief_pickaxe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_relief_pickaxe.json index fea042f8c..b7f8ef83c 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_relief_pickaxe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_relief_pickaxe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:gneiss_relief_pickaxe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_relief_plus.json b/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_relief_plus.json index abc5a67fc..e5c28a139 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_relief_plus.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_relief_plus.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:gneiss_relief_plus" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_relief_right.json b/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_relief_right.json index af279d177..14dad4543 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_relief_right.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_relief_right.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:gneiss_relief_right" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_relief_sword.json b/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_relief_sword.json index 4966fdad0..9073241a5 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_relief_sword.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_relief_sword.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:gneiss_relief_sword" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_relief_vertical.json b/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_relief_vertical.json index d552c85a6..7b582ccb2 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_relief_vertical.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_relief_vertical.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:gneiss_relief_vertical" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_slab.json index d60063370..f394c8fbd 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:gneiss_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_smooth.json b/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_smooth.json index f0b9e6ef7..317666431 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_smooth.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_smooth.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:gneiss_smooth" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_smooth_brick.json b/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_smooth_brick.json index 0801b6912..be9018f17 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_smooth_brick.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_smooth_brick.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:gneiss_smooth_brick" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_smooth_brick_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_smooth_brick_furnace.json index 56c419472..9b1367fdc 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_smooth_brick_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_smooth_brick_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:gneiss_smooth_brick_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_smooth_brick_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_smooth_brick_slab.json index 0f2941a4e..c9ea3b907 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_smooth_brick_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_smooth_brick_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:gneiss_smooth_brick_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_smooth_brick_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_smooth_brick_stairs.json index eef0fda5c..bdc1b9175 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_smooth_brick_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_smooth_brick_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:gneiss_smooth_brick_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_smooth_brick_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_smooth_brick_wall.json index c3c29896b..7a2a37fac 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_smooth_brick_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_smooth_brick_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:gneiss_smooth_brick_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_smooth_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_smooth_furnace.json index 9f991c96f..d495459a0 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_smooth_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_smooth_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:gneiss_smooth_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_smooth_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_smooth_slab.json index 2dd95a46d..6d21ab4f4 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_smooth_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_smooth_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:gneiss_smooth_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_smooth_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_smooth_stairs.json index 8ee0e7726..89231eae9 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_smooth_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_smooth_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:gneiss_smooth_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_smooth_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_smooth_wall.json index 64ce1712d..14b3b8d6f 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_smooth_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_smooth_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:gneiss_smooth_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_stairs.json index ef10967bc..7d5d37d32 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:gneiss_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_wall.json index 7d5b606e1..6db77a390 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/gneiss_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:gneiss_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/granite_brick.json b/src/main/resources/data/mineralogy/loot_tables/blocks/granite_brick.json index c48c018e8..d4da14f32 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/granite_brick.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/granite_brick.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:granite_brick" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/granite_brick_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/granite_brick_furnace.json index d524d4d96..faacecd7b 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/granite_brick_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/granite_brick_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:granite_brick_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/granite_brick_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/granite_brick_slab.json index 95d951304..ca1b9a978 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/granite_brick_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/granite_brick_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:granite_brick_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/granite_brick_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/granite_brick_stairs.json index 022635053..fed20af6b 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/granite_brick_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/granite_brick_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:granite_brick_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/granite_brick_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/granite_brick_wall.json index a4581d896..2a4642d64 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/granite_brick_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/granite_brick_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:granite_brick_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/granite_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/granite_furnace.json index bc65a5d86..d4eec90e5 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/granite_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/granite_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:granite_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/granite_relief_axe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/granite_relief_axe.json index ae61d9878..6ae420643 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/granite_relief_axe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/granite_relief_axe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:granite_relief_axe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/granite_relief_blank.json b/src/main/resources/data/mineralogy/loot_tables/blocks/granite_relief_blank.json index 280e0b928..2a2090da9 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/granite_relief_blank.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/granite_relief_blank.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:granite_relief_blank" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/granite_relief_cross.json b/src/main/resources/data/mineralogy/loot_tables/blocks/granite_relief_cross.json index 089201cc0..b87e3763c 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/granite_relief_cross.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/granite_relief_cross.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:granite_relief_cross" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/granite_relief_hammer.json b/src/main/resources/data/mineralogy/loot_tables/blocks/granite_relief_hammer.json index 01709b7b8..2ccbbcb72 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/granite_relief_hammer.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/granite_relief_hammer.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:granite_relief_hammer" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/granite_relief_hoe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/granite_relief_hoe.json index 91e4e53ab..28844855d 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/granite_relief_hoe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/granite_relief_hoe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:granite_relief_hoe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/granite_relief_horizontal.json b/src/main/resources/data/mineralogy/loot_tables/blocks/granite_relief_horizontal.json index 03462b83f..a030f4b4b 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/granite_relief_horizontal.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/granite_relief_horizontal.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:granite_relief_horizontal" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/granite_relief_i.json b/src/main/resources/data/mineralogy/loot_tables/blocks/granite_relief_i.json index 4d46087f1..894866a73 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/granite_relief_i.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/granite_relief_i.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:granite_relief_i" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/granite_relief_left.json b/src/main/resources/data/mineralogy/loot_tables/blocks/granite_relief_left.json index 3f7d39fb1..c994486b2 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/granite_relief_left.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/granite_relief_left.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:granite_relief_left" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/granite_relief_pickaxe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/granite_relief_pickaxe.json index 3fac797f4..5639eecd9 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/granite_relief_pickaxe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/granite_relief_pickaxe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:granite_relief_pickaxe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/granite_relief_plus.json b/src/main/resources/data/mineralogy/loot_tables/blocks/granite_relief_plus.json index b94c4517c..e907c3e3e 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/granite_relief_plus.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/granite_relief_plus.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:granite_relief_plus" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/granite_relief_right.json b/src/main/resources/data/mineralogy/loot_tables/blocks/granite_relief_right.json index 194e1050b..605a4e3e9 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/granite_relief_right.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/granite_relief_right.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:granite_relief_right" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/granite_relief_sword.json b/src/main/resources/data/mineralogy/loot_tables/blocks/granite_relief_sword.json index c117984e9..0b8a68c09 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/granite_relief_sword.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/granite_relief_sword.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:granite_relief_sword" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/granite_relief_vertical.json b/src/main/resources/data/mineralogy/loot_tables/blocks/granite_relief_vertical.json index 4ddbd7639..abe16babe 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/granite_relief_vertical.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/granite_relief_vertical.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:granite_relief_vertical" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/granite_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/granite_slab.json index 5eba719d1..379f39635 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/granite_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/granite_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:granite_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/granite_smooth.json b/src/main/resources/data/mineralogy/loot_tables/blocks/granite_smooth.json index d1f0b14c2..07d60d780 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/granite_smooth.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/granite_smooth.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:granite_smooth" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/granite_smooth_brick.json b/src/main/resources/data/mineralogy/loot_tables/blocks/granite_smooth_brick.json index 2bbff88b0..2d73c4560 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/granite_smooth_brick.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/granite_smooth_brick.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:granite_smooth_brick" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/granite_smooth_brick_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/granite_smooth_brick_furnace.json index 92a76cb18..095edee93 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/granite_smooth_brick_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/granite_smooth_brick_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:granite_smooth_brick_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/granite_smooth_brick_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/granite_smooth_brick_slab.json index 45e8133f8..11cef6a20 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/granite_smooth_brick_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/granite_smooth_brick_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:granite_smooth_brick_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/granite_smooth_brick_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/granite_smooth_brick_stairs.json index 7e1a88884..ff7357fef 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/granite_smooth_brick_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/granite_smooth_brick_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:granite_smooth_brick_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/granite_smooth_brick_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/granite_smooth_brick_wall.json index 981ec8362..5ab782747 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/granite_smooth_brick_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/granite_smooth_brick_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:granite_smooth_brick_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/granite_smooth_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/granite_smooth_furnace.json index 44d661a4d..ec1feeb44 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/granite_smooth_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/granite_smooth_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:granite_smooth_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/granite_smooth_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/granite_smooth_slab.json index 7e855e16a..e31afcce2 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/granite_smooth_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/granite_smooth_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:granite_smooth_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/granite_smooth_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/granite_smooth_stairs.json index 8a98adbc3..6b57a8f6d 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/granite_smooth_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/granite_smooth_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:granite_smooth_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/granite_smooth_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/granite_smooth_wall.json index eb152e9a3..241283e45 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/granite_smooth_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/granite_smooth_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:granite_smooth_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/granite_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/granite_stairs.json index 9ac7c441c..7c5e42086 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/granite_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/granite_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:granite_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/granite_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/granite_wall.json index 8ea7d14b7..d13977d8a 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/granite_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/granite_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:granite_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_brick.json b/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_brick.json index 895d8225e..96c04f0da 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_brick.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_brick.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:hornfels_brick" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_brick_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_brick_furnace.json index 3bd202f0e..70ef7f7af 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_brick_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_brick_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:hornfels_brick_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_brick_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_brick_slab.json index 0a160799a..9b956b018 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_brick_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_brick_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:hornfels_brick_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_brick_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_brick_stairs.json index 90ad3142f..493bea25f 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_brick_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_brick_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:hornfels_brick_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_brick_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_brick_wall.json index 8d5b95f8c..4fc0632b2 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_brick_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_brick_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:hornfels_brick_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_furnace.json index e5232efda..da4110083 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:hornfels_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_relief_axe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_relief_axe.json index 71eca36d0..02e2c432b 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_relief_axe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_relief_axe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:hornfels_relief_axe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_relief_blank.json b/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_relief_blank.json index 1f3db6db2..f45691fc5 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_relief_blank.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_relief_blank.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:hornfels_relief_blank" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_relief_cross.json b/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_relief_cross.json index ddb99a679..1de65e4b0 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_relief_cross.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_relief_cross.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:hornfels_relief_cross" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_relief_hammer.json b/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_relief_hammer.json index bb6b54bea..751e104b4 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_relief_hammer.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_relief_hammer.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:hornfels_relief_hammer" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_relief_hoe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_relief_hoe.json index 16874ea45..6423f00a1 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_relief_hoe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_relief_hoe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:hornfels_relief_hoe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_relief_horizontal.json b/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_relief_horizontal.json index c96876070..f8ba7b97c 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_relief_horizontal.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_relief_horizontal.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:hornfels_relief_horizontal" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_relief_i.json b/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_relief_i.json index fdbcc9423..2fe6e1f51 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_relief_i.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_relief_i.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:hornfels_relief_i" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_relief_left.json b/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_relief_left.json index 6c4f215e4..38e11932c 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_relief_left.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_relief_left.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:hornfels_relief_left" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_relief_pickaxe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_relief_pickaxe.json index b00d05f4c..c3ddbbe90 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_relief_pickaxe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_relief_pickaxe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:hornfels_relief_pickaxe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_relief_plus.json b/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_relief_plus.json index 7131f88ca..73712ed05 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_relief_plus.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_relief_plus.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:hornfels_relief_plus" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_relief_right.json b/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_relief_right.json index 39d4ed757..b656e7e60 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_relief_right.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_relief_right.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:hornfels_relief_right" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_relief_sword.json b/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_relief_sword.json index fb30bc6cb..f317e86a7 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_relief_sword.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_relief_sword.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:hornfels_relief_sword" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_relief_vertical.json b/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_relief_vertical.json index 499454da7..aabf760c4 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_relief_vertical.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_relief_vertical.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:hornfels_relief_vertical" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_slab.json index f6281d003..7b15f021a 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:hornfels_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_smooth.json b/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_smooth.json index 5590a03da..53888f190 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_smooth.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_smooth.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:hornfels_smooth" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_smooth_brick.json b/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_smooth_brick.json index 250abdcf3..c2a8788e9 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_smooth_brick.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_smooth_brick.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:hornfels_smooth_brick" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_smooth_brick_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_smooth_brick_furnace.json index 628d68054..c026ee15a 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_smooth_brick_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_smooth_brick_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:hornfels_smooth_brick_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_smooth_brick_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_smooth_brick_slab.json index af49c7941..54c89e652 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_smooth_brick_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_smooth_brick_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:hornfels_smooth_brick_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_smooth_brick_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_smooth_brick_stairs.json index 781abcbe5..a0a1dd599 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_smooth_brick_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_smooth_brick_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:hornfels_smooth_brick_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_smooth_brick_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_smooth_brick_wall.json index 2265bee69..a735637ee 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_smooth_brick_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_smooth_brick_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:hornfels_smooth_brick_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_smooth_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_smooth_furnace.json index 34343b251..e3e0a3c3d 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_smooth_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_smooth_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:hornfels_smooth_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_smooth_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_smooth_slab.json index 63bad5469..04be82b42 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_smooth_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_smooth_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:hornfels_smooth_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_smooth_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_smooth_stairs.json index 65248a131..66b873ff9 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_smooth_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_smooth_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:hornfels_smooth_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_smooth_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_smooth_wall.json index 179e0eb79..d85d0fa5a 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_smooth_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_smooth_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:hornfels_smooth_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_stairs.json index e5c7c7a33..9d9170c49 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:hornfels_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_wall.json index 64c255bba..a29a01baf 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/hornfels_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:hornfels_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_brick.json b/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_brick.json index 496800c26..284095ad4 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_brick.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_brick.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:limestone_brick" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_brick_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_brick_furnace.json index f75d3386f..7714a17dc 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_brick_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_brick_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:limestone_brick_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_brick_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_brick_slab.json index d4662fa40..34e40a89a 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_brick_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_brick_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:limestone_brick_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_brick_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_brick_stairs.json index ee1d10719..f35d1ce1b 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_brick_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_brick_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:limestone_brick_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_brick_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_brick_wall.json index e7e582c10..40a404894 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_brick_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_brick_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:limestone_brick_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_furnace.json index 9e73d3185..42695a2c9 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:limestone_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_relief_axe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_relief_axe.json index 507bb12c7..4299cd6b0 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_relief_axe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_relief_axe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:limestone_relief_axe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_relief_blank.json b/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_relief_blank.json index cee151932..6234d3d31 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_relief_blank.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_relief_blank.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:limestone_relief_blank" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_relief_cross.json b/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_relief_cross.json index a6304c824..99107c3dd 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_relief_cross.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_relief_cross.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:limestone_relief_cross" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_relief_hammer.json b/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_relief_hammer.json index 7ecd1d6ec..2d5ac27ac 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_relief_hammer.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_relief_hammer.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:limestone_relief_hammer" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_relief_hoe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_relief_hoe.json index cb11f7dd3..c501e33c2 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_relief_hoe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_relief_hoe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:limestone_relief_hoe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_relief_horizontal.json b/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_relief_horizontal.json index e464dc382..e49aed398 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_relief_horizontal.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_relief_horizontal.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:limestone_relief_horizontal" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_relief_i.json b/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_relief_i.json index 64c1d54a6..78fe29d44 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_relief_i.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_relief_i.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:limestone_relief_i" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_relief_left.json b/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_relief_left.json index adf287f60..36267b086 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_relief_left.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_relief_left.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:limestone_relief_left" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_relief_pickaxe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_relief_pickaxe.json index ca0a43744..6389de85c 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_relief_pickaxe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_relief_pickaxe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:limestone_relief_pickaxe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_relief_plus.json b/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_relief_plus.json index c28e28a9c..082858c98 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_relief_plus.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_relief_plus.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:limestone_relief_plus" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_relief_right.json b/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_relief_right.json index 510ab6951..8f0730297 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_relief_right.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_relief_right.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:limestone_relief_right" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_relief_sword.json b/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_relief_sword.json index 8b02bd838..de652f31a 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_relief_sword.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_relief_sword.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:limestone_relief_sword" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_relief_vertical.json b/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_relief_vertical.json index 24a294866..f1ddb91a0 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_relief_vertical.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_relief_vertical.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:limestone_relief_vertical" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_slab.json index bc3ef4cf2..607037562 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:limestone_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_smooth.json b/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_smooth.json index 91d5b46e9..75f99be2b 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_smooth.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_smooth.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:limestone_smooth" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_smooth_brick.json b/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_smooth_brick.json index edb59a125..166feb9cd 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_smooth_brick.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_smooth_brick.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:limestone_smooth_brick" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_smooth_brick_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_smooth_brick_furnace.json index c2cfd81de..4e8c96f31 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_smooth_brick_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_smooth_brick_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:limestone_smooth_brick_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_smooth_brick_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_smooth_brick_slab.json index d2e40978f..9cb76d5d7 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_smooth_brick_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_smooth_brick_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:limestone_smooth_brick_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_smooth_brick_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_smooth_brick_stairs.json index cd595291d..b9874a1ec 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_smooth_brick_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_smooth_brick_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:limestone_smooth_brick_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_smooth_brick_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_smooth_brick_wall.json index df04341de..5159c7483 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_smooth_brick_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_smooth_brick_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:limestone_smooth_brick_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_smooth_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_smooth_furnace.json index ffdc501c0..b021c1cb7 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_smooth_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_smooth_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:limestone_smooth_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_smooth_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_smooth_slab.json index 48080ad28..85a5dce33 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_smooth_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_smooth_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:limestone_smooth_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_smooth_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_smooth_stairs.json index 04ba80189..2abc7105f 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_smooth_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_smooth_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:limestone_smooth_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_smooth_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_smooth_wall.json index 3e0717f7e..a1174074c 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_smooth_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_smooth_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:limestone_smooth_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_stairs.json index cfe91a629..4976d327a 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:limestone_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_wall.json index b33e8524b..d912dd57f 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/limestone_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:limestone_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/marble_brick.json b/src/main/resources/data/mineralogy/loot_tables/blocks/marble_brick.json index d2edc103d..9cef6255c 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/marble_brick.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/marble_brick.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:marble_brick" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/marble_brick_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/marble_brick_furnace.json index bbc56eb10..139965192 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/marble_brick_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/marble_brick_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:marble_brick_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/marble_brick_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/marble_brick_slab.json index ef2842baa..2205963c8 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/marble_brick_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/marble_brick_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:marble_brick_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/marble_brick_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/marble_brick_stairs.json index 5a4df09a0..8a83b3380 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/marble_brick_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/marble_brick_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:marble_brick_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/marble_brick_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/marble_brick_wall.json index 49f17f83c..088702759 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/marble_brick_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/marble_brick_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:marble_brick_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/marble_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/marble_furnace.json index 5703e17b7..f84561047 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/marble_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/marble_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:marble_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/marble_relief_axe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/marble_relief_axe.json index 4168901c6..8a41e0ba6 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/marble_relief_axe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/marble_relief_axe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:marble_relief_axe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/marble_relief_blank.json b/src/main/resources/data/mineralogy/loot_tables/blocks/marble_relief_blank.json index a6fde9b32..c6e083966 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/marble_relief_blank.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/marble_relief_blank.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:marble_relief_blank" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/marble_relief_cross.json b/src/main/resources/data/mineralogy/loot_tables/blocks/marble_relief_cross.json index e82f0574e..c17bb322f 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/marble_relief_cross.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/marble_relief_cross.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:marble_relief_cross" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/marble_relief_hammer.json b/src/main/resources/data/mineralogy/loot_tables/blocks/marble_relief_hammer.json index bef8fd355..a855b97ac 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/marble_relief_hammer.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/marble_relief_hammer.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:marble_relief_hammer" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/marble_relief_hoe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/marble_relief_hoe.json index c91033164..8177b2f74 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/marble_relief_hoe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/marble_relief_hoe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:marble_relief_hoe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/marble_relief_horizontal.json b/src/main/resources/data/mineralogy/loot_tables/blocks/marble_relief_horizontal.json index dba85971d..7c35e14f4 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/marble_relief_horizontal.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/marble_relief_horizontal.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:marble_relief_horizontal" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/marble_relief_i.json b/src/main/resources/data/mineralogy/loot_tables/blocks/marble_relief_i.json index bfb45b4d0..f471feb25 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/marble_relief_i.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/marble_relief_i.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:marble_relief_i" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/marble_relief_left.json b/src/main/resources/data/mineralogy/loot_tables/blocks/marble_relief_left.json index 27c92052a..7f87f27e5 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/marble_relief_left.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/marble_relief_left.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:marble_relief_left" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/marble_relief_pickaxe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/marble_relief_pickaxe.json index 5a2493e72..22b256b36 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/marble_relief_pickaxe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/marble_relief_pickaxe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:marble_relief_pickaxe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/marble_relief_plus.json b/src/main/resources/data/mineralogy/loot_tables/blocks/marble_relief_plus.json index 903210d32..917f300ca 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/marble_relief_plus.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/marble_relief_plus.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:marble_relief_plus" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/marble_relief_right.json b/src/main/resources/data/mineralogy/loot_tables/blocks/marble_relief_right.json index a1bc58b64..463b217e4 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/marble_relief_right.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/marble_relief_right.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:marble_relief_right" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/marble_relief_sword.json b/src/main/resources/data/mineralogy/loot_tables/blocks/marble_relief_sword.json index 24b304da0..8e3022b47 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/marble_relief_sword.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/marble_relief_sword.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:marble_relief_sword" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/marble_relief_vertical.json b/src/main/resources/data/mineralogy/loot_tables/blocks/marble_relief_vertical.json index 0208b0893..ba6655e81 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/marble_relief_vertical.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/marble_relief_vertical.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:marble_relief_vertical" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/marble_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/marble_slab.json index 62df6f044..dd6fc7ed1 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/marble_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/marble_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:marble_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/marble_smooth.json b/src/main/resources/data/mineralogy/loot_tables/blocks/marble_smooth.json index cb028722c..95b933eb6 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/marble_smooth.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/marble_smooth.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:marble_smooth" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/marble_smooth_brick.json b/src/main/resources/data/mineralogy/loot_tables/blocks/marble_smooth_brick.json index a7d4e91eb..2650049cc 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/marble_smooth_brick.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/marble_smooth_brick.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:marble_smooth_brick" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/marble_smooth_brick_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/marble_smooth_brick_furnace.json index fc3b47f16..bd26ad9c5 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/marble_smooth_brick_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/marble_smooth_brick_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:marble_smooth_brick_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/marble_smooth_brick_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/marble_smooth_brick_slab.json index 216aa881e..461b4e54a 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/marble_smooth_brick_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/marble_smooth_brick_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:marble_smooth_brick_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/marble_smooth_brick_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/marble_smooth_brick_stairs.json index b01112167..1b373f927 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/marble_smooth_brick_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/marble_smooth_brick_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:marble_smooth_brick_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/marble_smooth_brick_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/marble_smooth_brick_wall.json index 0149deacb..f80bbde7a 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/marble_smooth_brick_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/marble_smooth_brick_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:marble_smooth_brick_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/marble_smooth_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/marble_smooth_furnace.json index a361e9cce..7af67d524 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/marble_smooth_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/marble_smooth_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:marble_smooth_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/marble_smooth_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/marble_smooth_slab.json index b938cca0d..9fc7af339 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/marble_smooth_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/marble_smooth_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:marble_smooth_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/marble_smooth_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/marble_smooth_stairs.json index 304ce5db7..fcdf97782 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/marble_smooth_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/marble_smooth_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:marble_smooth_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/marble_smooth_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/marble_smooth_wall.json index 1a40befcb..964e4f83e 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/marble_smooth_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/marble_smooth_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:marble_smooth_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/marble_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/marble_stairs.json index ac49875d7..457f2bcb7 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/marble_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/marble_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:marble_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/marble_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/marble_wall.json index 62d937dc3..0de79b929 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/marble_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/marble_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:marble_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_brick.json b/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_brick.json index 386fa4520..ea58adc88 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_brick.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_brick.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:novaculite_brick" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_brick_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_brick_furnace.json index 32bd0239d..0c889c167 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_brick_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_brick_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:novaculite_brick_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_brick_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_brick_slab.json index bf1017e2f..71c254aa0 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_brick_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_brick_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:novaculite_brick_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_brick_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_brick_stairs.json index 52559ff98..d9d5d7e9a 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_brick_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_brick_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:novaculite_brick_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_brick_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_brick_wall.json index d130f4d81..c61e27d4a 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_brick_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_brick_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:novaculite_brick_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_furnace.json index 7ef92e513..cbbd4fc21 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:novaculite_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_relief_axe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_relief_axe.json index 17e6bf0b5..3adb56c3d 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_relief_axe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_relief_axe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:novaculite_relief_axe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_relief_blank.json b/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_relief_blank.json index 532a2c3e2..c80434d90 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_relief_blank.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_relief_blank.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:novaculite_relief_blank" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_relief_cross.json b/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_relief_cross.json index ce869af38..3d42a5a62 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_relief_cross.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_relief_cross.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:novaculite_relief_cross" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_relief_hammer.json b/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_relief_hammer.json index 91d3ea28b..2251dfb00 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_relief_hammer.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_relief_hammer.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:novaculite_relief_hammer" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_relief_hoe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_relief_hoe.json index b336125f9..e7f2f8301 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_relief_hoe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_relief_hoe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:novaculite_relief_hoe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_relief_horizontal.json b/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_relief_horizontal.json index ea0cd2332..6f70f23b8 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_relief_horizontal.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_relief_horizontal.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:novaculite_relief_horizontal" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_relief_i.json b/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_relief_i.json index 7490ee2a8..92199af02 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_relief_i.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_relief_i.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:novaculite_relief_i" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_relief_left.json b/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_relief_left.json index 18f570006..24892e4df 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_relief_left.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_relief_left.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:novaculite_relief_left" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_relief_pickaxe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_relief_pickaxe.json index 18b2e3f6c..897114db5 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_relief_pickaxe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_relief_pickaxe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:novaculite_relief_pickaxe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_relief_plus.json b/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_relief_plus.json index 0720ea3bd..3f88c8929 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_relief_plus.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_relief_plus.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:novaculite_relief_plus" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_relief_right.json b/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_relief_right.json index df9169830..073d54aa2 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_relief_right.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_relief_right.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:novaculite_relief_right" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_relief_sword.json b/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_relief_sword.json index 147e067e5..486f66cbb 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_relief_sword.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_relief_sword.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:novaculite_relief_sword" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_relief_vertical.json b/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_relief_vertical.json index df0c72f02..64c27fc64 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_relief_vertical.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_relief_vertical.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:novaculite_relief_vertical" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_slab.json index 881798d53..e884f7c0c 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:novaculite_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_smooth.json b/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_smooth.json index 65f5e07c7..0037383f1 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_smooth.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_smooth.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:novaculite_smooth" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_smooth_brick.json b/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_smooth_brick.json index 70b5c79b6..0fe82d112 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_smooth_brick.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_smooth_brick.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:novaculite_smooth_brick" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_smooth_brick_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_smooth_brick_furnace.json index 8ec4b7fd4..5d44514be 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_smooth_brick_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_smooth_brick_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:novaculite_smooth_brick_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_smooth_brick_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_smooth_brick_slab.json index 3adb0e97d..884acf74d 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_smooth_brick_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_smooth_brick_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:novaculite_smooth_brick_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_smooth_brick_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_smooth_brick_stairs.json index 0a5a86bf9..85bd2c03f 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_smooth_brick_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_smooth_brick_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:novaculite_smooth_brick_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_smooth_brick_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_smooth_brick_wall.json index d444210c6..3159ea4ff 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_smooth_brick_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_smooth_brick_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:novaculite_smooth_brick_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_smooth_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_smooth_furnace.json index c788ae2e8..13d402970 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_smooth_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_smooth_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:novaculite_smooth_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_smooth_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_smooth_slab.json index 3665b082e..bb541fb0a 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_smooth_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_smooth_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:novaculite_smooth_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_smooth_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_smooth_stairs.json index 665b3081f..d841b8ca0 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_smooth_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_smooth_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:novaculite_smooth_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_smooth_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_smooth_wall.json index 53ed70130..69f9be83c 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_smooth_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_smooth_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:novaculite_smooth_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_stairs.json index d4d00c92c..924a8bded 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:novaculite_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_wall.json index 5b478b5bf..b5e8cc605 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/novaculite_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:novaculite_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_brick.json b/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_brick.json index a09201c6b..7cfa1d743 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_brick.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_brick.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:pegmatite_brick" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_brick_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_brick_furnace.json index 8b04af506..ec7ec3a82 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_brick_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_brick_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:pegmatite_brick_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_brick_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_brick_slab.json index 50c777aee..70e2bf6e8 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_brick_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_brick_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:pegmatite_brick_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_brick_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_brick_stairs.json index eae18eeeb..2cd0759de 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_brick_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_brick_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:pegmatite_brick_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_brick_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_brick_wall.json index 970d3e417..45a161cd5 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_brick_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_brick_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:pegmatite_brick_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_furnace.json index c799f16de..1e5d1d5e3 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:pegmatite_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_relief_axe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_relief_axe.json index ee765a81d..f068169c8 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_relief_axe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_relief_axe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:pegmatite_relief_axe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_relief_blank.json b/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_relief_blank.json index c54d97e73..ca4d2ff24 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_relief_blank.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_relief_blank.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:pegmatite_relief_blank" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_relief_cross.json b/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_relief_cross.json index 259bbd741..a7424e015 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_relief_cross.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_relief_cross.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:pegmatite_relief_cross" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_relief_hammer.json b/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_relief_hammer.json index 172ae2a24..5c8f410a1 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_relief_hammer.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_relief_hammer.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:pegmatite_relief_hammer" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_relief_hoe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_relief_hoe.json index 78ef07ef8..32ee9df19 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_relief_hoe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_relief_hoe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:pegmatite_relief_hoe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_relief_horizontal.json b/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_relief_horizontal.json index b9392c0a4..fe6558782 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_relief_horizontal.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_relief_horizontal.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:pegmatite_relief_horizontal" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_relief_i.json b/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_relief_i.json index cb8c21ea7..dd1984e3d 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_relief_i.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_relief_i.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:pegmatite_relief_i" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_relief_left.json b/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_relief_left.json index 00110d6b9..d828afdf7 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_relief_left.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_relief_left.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:pegmatite_relief_left" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_relief_pickaxe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_relief_pickaxe.json index 9a0a24617..9172c9261 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_relief_pickaxe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_relief_pickaxe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:pegmatite_relief_pickaxe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_relief_plus.json b/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_relief_plus.json index 72009d18b..8daea67e3 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_relief_plus.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_relief_plus.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:pegmatite_relief_plus" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_relief_right.json b/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_relief_right.json index 7f7664511..aa0defa8f 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_relief_right.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_relief_right.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:pegmatite_relief_right" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_relief_sword.json b/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_relief_sword.json index 0f05506fe..c459ab09a 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_relief_sword.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_relief_sword.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:pegmatite_relief_sword" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_relief_vertical.json b/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_relief_vertical.json index 119de9687..491d2bbcc 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_relief_vertical.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_relief_vertical.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:pegmatite_relief_vertical" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_slab.json index f0073dc11..3e9977ae9 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:pegmatite_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_smooth.json b/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_smooth.json index aded45ac0..eb6754c5a 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_smooth.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_smooth.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:pegmatite_smooth" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_smooth_brick.json b/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_smooth_brick.json index de86fe91d..b62ac6939 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_smooth_brick.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_smooth_brick.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:pegmatite_smooth_brick" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_smooth_brick_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_smooth_brick_furnace.json index 389145554..8291498ee 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_smooth_brick_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_smooth_brick_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:pegmatite_smooth_brick_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_smooth_brick_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_smooth_brick_slab.json index c9ae4c158..e62844278 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_smooth_brick_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_smooth_brick_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:pegmatite_smooth_brick_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_smooth_brick_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_smooth_brick_stairs.json index deb430524..b55954421 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_smooth_brick_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_smooth_brick_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:pegmatite_smooth_brick_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_smooth_brick_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_smooth_brick_wall.json index 869fbff88..051c6756f 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_smooth_brick_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_smooth_brick_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:pegmatite_smooth_brick_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_smooth_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_smooth_furnace.json index f1db858d2..617a05e62 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_smooth_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_smooth_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:pegmatite_smooth_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_smooth_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_smooth_slab.json index eedcfb195..29494ac9c 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_smooth_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_smooth_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:pegmatite_smooth_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_smooth_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_smooth_stairs.json index 277600cc2..ac6a4dc51 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_smooth_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_smooth_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:pegmatite_smooth_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_smooth_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_smooth_wall.json index 94f8a8f82..cdba813c0 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_smooth_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_smooth_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:pegmatite_smooth_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_stairs.json index 8822b80aa..6328031ef 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:pegmatite_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_wall.json index 715f8c2c8..5b2f9566b 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/pegmatite_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:pegmatite_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_brick.json b/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_brick.json index 4eeeb917b..c356f7d91 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_brick.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_brick.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:peridotite_brick" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_brick_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_brick_furnace.json index df0cc0555..35ce92387 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_brick_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_brick_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:peridotite_brick_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_brick_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_brick_slab.json index 2ea35544d..f4e4033f5 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_brick_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_brick_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:peridotite_brick_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_brick_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_brick_stairs.json index 3a8018772..f7592fd4a 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_brick_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_brick_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:peridotite_brick_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_brick_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_brick_wall.json index cd8798339..f3536fd11 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_brick_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_brick_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:peridotite_brick_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_furnace.json index 1882b2922..3de5af26c 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:peridotite_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_relief_axe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_relief_axe.json index 0d3629836..0df47aca3 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_relief_axe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_relief_axe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:peridotite_relief_axe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_relief_blank.json b/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_relief_blank.json index ec27940a6..f96f5d46f 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_relief_blank.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_relief_blank.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:peridotite_relief_blank" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_relief_cross.json b/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_relief_cross.json index 047bd8e35..d86cf24bf 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_relief_cross.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_relief_cross.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:peridotite_relief_cross" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_relief_hammer.json b/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_relief_hammer.json index 3aee5d8ad..67576b35f 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_relief_hammer.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_relief_hammer.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:peridotite_relief_hammer" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_relief_hoe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_relief_hoe.json index b31237db6..7ac390c23 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_relief_hoe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_relief_hoe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:peridotite_relief_hoe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_relief_horizontal.json b/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_relief_horizontal.json index e927676f0..881fbc3d2 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_relief_horizontal.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_relief_horizontal.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:peridotite_relief_horizontal" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_relief_i.json b/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_relief_i.json index 66f5ce638..32a74b296 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_relief_i.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_relief_i.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:peridotite_relief_i" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_relief_left.json b/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_relief_left.json index b8f45ebee..aa89d30b9 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_relief_left.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_relief_left.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:peridotite_relief_left" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_relief_pickaxe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_relief_pickaxe.json index 8e3e12ee2..1d925a532 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_relief_pickaxe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_relief_pickaxe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:peridotite_relief_pickaxe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_relief_plus.json b/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_relief_plus.json index 4422cd73c..d1adcdecb 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_relief_plus.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_relief_plus.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:peridotite_relief_plus" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_relief_right.json b/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_relief_right.json index b973a63d2..98a51253e 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_relief_right.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_relief_right.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:peridotite_relief_right" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_relief_sword.json b/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_relief_sword.json index 956eefdcd..1279b5d87 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_relief_sword.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_relief_sword.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:peridotite_relief_sword" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_relief_vertical.json b/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_relief_vertical.json index 9f0b455d6..1b92da56f 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_relief_vertical.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_relief_vertical.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:peridotite_relief_vertical" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_slab.json index d6672c9b8..4ec0a6f84 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:peridotite_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_smooth.json b/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_smooth.json index 6ef2fc535..1c2d5689d 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_smooth.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_smooth.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:peridotite_smooth" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_smooth_brick.json b/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_smooth_brick.json index b5da5e703..83a61d049 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_smooth_brick.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_smooth_brick.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:peridotite_smooth_brick" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_smooth_brick_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_smooth_brick_furnace.json index 3e658f64b..85899e5b7 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_smooth_brick_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_smooth_brick_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:peridotite_smooth_brick_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_smooth_brick_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_smooth_brick_slab.json index 83da25acf..4c97a30e5 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_smooth_brick_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_smooth_brick_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:peridotite_smooth_brick_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_smooth_brick_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_smooth_brick_stairs.json index 5d4cce92e..b750cf086 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_smooth_brick_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_smooth_brick_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:peridotite_smooth_brick_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_smooth_brick_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_smooth_brick_wall.json index 5e12e19f6..cf5d3f739 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_smooth_brick_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_smooth_brick_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:peridotite_smooth_brick_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_smooth_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_smooth_furnace.json index 040904c56..bd33656fb 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_smooth_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_smooth_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:peridotite_smooth_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_smooth_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_smooth_slab.json index 0b0a6685b..74d45478c 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_smooth_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_smooth_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:peridotite_smooth_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_smooth_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_smooth_stairs.json index ffa189d39..6f0ea4dc7 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_smooth_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_smooth_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:peridotite_smooth_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_smooth_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_smooth_wall.json index 95d90892b..56adb723d 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_smooth_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_smooth_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:peridotite_smooth_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_stairs.json index 5e0b01dd3..86fc5e90f 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:peridotite_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_wall.json index f3a91df42..1ba8476bb 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/peridotite_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:peridotite_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_brick.json b/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_brick.json index d2e60290a..1ca4c6a31 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_brick.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_brick.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:phyllite_brick" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_brick_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_brick_furnace.json index 966c83da9..7a5adc41b 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_brick_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_brick_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:phyllite_brick_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_brick_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_brick_slab.json index 6c28018d3..59f3b7abe 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_brick_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_brick_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:phyllite_brick_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_brick_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_brick_stairs.json index 18f37cf53..d9d4fdcac 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_brick_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_brick_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:phyllite_brick_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_brick_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_brick_wall.json index eda4f3535..bb16b8129 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_brick_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_brick_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:phyllite_brick_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_furnace.json index 0fc6a55d9..a54768a48 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:phyllite_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_relief_axe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_relief_axe.json index fa8472360..e989e2cb6 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_relief_axe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_relief_axe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:phyllite_relief_axe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_relief_blank.json b/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_relief_blank.json index dbe9d0929..f8b159cb4 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_relief_blank.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_relief_blank.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:phyllite_relief_blank" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_relief_cross.json b/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_relief_cross.json index 253e507a8..f5a8a7bff 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_relief_cross.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_relief_cross.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:phyllite_relief_cross" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_relief_hammer.json b/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_relief_hammer.json index 9386d1735..a8afc6c52 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_relief_hammer.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_relief_hammer.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:phyllite_relief_hammer" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_relief_hoe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_relief_hoe.json index 6259668af..f7c54e098 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_relief_hoe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_relief_hoe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:phyllite_relief_hoe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_relief_horizontal.json b/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_relief_horizontal.json index 70e749190..328f2b915 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_relief_horizontal.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_relief_horizontal.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:phyllite_relief_horizontal" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_relief_i.json b/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_relief_i.json index ab14f0903..48771470e 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_relief_i.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_relief_i.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:phyllite_relief_i" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_relief_left.json b/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_relief_left.json index 46d9623b8..df6b8f939 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_relief_left.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_relief_left.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:phyllite_relief_left" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_relief_pickaxe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_relief_pickaxe.json index 7e07e43ed..e91747fcb 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_relief_pickaxe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_relief_pickaxe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:phyllite_relief_pickaxe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_relief_plus.json b/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_relief_plus.json index 952eb227f..091215ace 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_relief_plus.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_relief_plus.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:phyllite_relief_plus" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_relief_right.json b/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_relief_right.json index 4bc4c1dda..174db08cd 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_relief_right.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_relief_right.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:phyllite_relief_right" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_relief_sword.json b/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_relief_sword.json index f6baa2a15..3dbbae6bc 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_relief_sword.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_relief_sword.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:phyllite_relief_sword" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_relief_vertical.json b/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_relief_vertical.json index f0ea21394..4374fddf8 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_relief_vertical.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_relief_vertical.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:phyllite_relief_vertical" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_slab.json index 1bed21f96..b484f40bd 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:phyllite_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_smooth.json b/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_smooth.json index 0632456a8..d9598f5ae 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_smooth.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_smooth.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:phyllite_smooth" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_smooth_brick.json b/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_smooth_brick.json index 642774599..0e5cdf75b 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_smooth_brick.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_smooth_brick.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:phyllite_smooth_brick" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_smooth_brick_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_smooth_brick_furnace.json index 1bc0b79ee..c437d688c 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_smooth_brick_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_smooth_brick_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:phyllite_smooth_brick_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_smooth_brick_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_smooth_brick_slab.json index 8f477a1b9..dee6491b0 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_smooth_brick_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_smooth_brick_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:phyllite_smooth_brick_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_smooth_brick_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_smooth_brick_stairs.json index 3bd4aba0a..08f79c1b9 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_smooth_brick_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_smooth_brick_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:phyllite_smooth_brick_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_smooth_brick_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_smooth_brick_wall.json index 551e344f7..b7e04dd6f 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_smooth_brick_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_smooth_brick_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:phyllite_smooth_brick_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_smooth_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_smooth_furnace.json index 63aeedc13..635f6d10b 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_smooth_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_smooth_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:phyllite_smooth_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_smooth_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_smooth_slab.json index 7190807e1..759f16c10 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_smooth_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_smooth_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:phyllite_smooth_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_smooth_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_smooth_stairs.json index deaed2d7d..1de94007c 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_smooth_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_smooth_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:phyllite_smooth_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_smooth_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_smooth_wall.json index be423f1c5..bb2e8b6b0 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_smooth_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_smooth_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:phyllite_smooth_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_stairs.json index 43a60c4ee..68f8e270b 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:phyllite_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_wall.json index cc1012c3e..9f1557ed9 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/phyllite_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:phyllite_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_brick.json b/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_brick.json index 3e109c7cd..7c53c6715 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_brick.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_brick.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:quartzite_brick" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_brick_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_brick_furnace.json index ac02e5303..e25af3b20 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_brick_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_brick_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:quartzite_brick_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_brick_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_brick_slab.json index 584fe97e5..0d8dfe3b1 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_brick_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_brick_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:quartzite_brick_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_brick_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_brick_stairs.json index 6b6a99ec4..1e0dc9787 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_brick_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_brick_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:quartzite_brick_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_brick_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_brick_wall.json index 8c4d5c77f..0c5c81547 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_brick_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_brick_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:quartzite_brick_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_furnace.json index 623641870..d4e409f1e 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:quartzite_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_relief_axe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_relief_axe.json index 31e9d7583..d3c919e59 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_relief_axe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_relief_axe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:quartzite_relief_axe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_relief_blank.json b/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_relief_blank.json index 68697c66c..c714a9b7a 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_relief_blank.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_relief_blank.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:quartzite_relief_blank" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_relief_cross.json b/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_relief_cross.json index 798bb323f..9f9f10603 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_relief_cross.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_relief_cross.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:quartzite_relief_cross" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_relief_hammer.json b/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_relief_hammer.json index f93baf469..d3c9a4213 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_relief_hammer.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_relief_hammer.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:quartzite_relief_hammer" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_relief_hoe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_relief_hoe.json index 1b2de41fa..2d667cee7 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_relief_hoe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_relief_hoe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:quartzite_relief_hoe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_relief_horizontal.json b/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_relief_horizontal.json index a2c6b54b7..5c13d480d 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_relief_horizontal.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_relief_horizontal.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:quartzite_relief_horizontal" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_relief_i.json b/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_relief_i.json index 1a9d4e5f3..be89844ea 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_relief_i.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_relief_i.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:quartzite_relief_i" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_relief_left.json b/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_relief_left.json index 3c52fa454..46f813336 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_relief_left.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_relief_left.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:quartzite_relief_left" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_relief_pickaxe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_relief_pickaxe.json index 0e24b5bd3..73f5e86fa 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_relief_pickaxe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_relief_pickaxe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:quartzite_relief_pickaxe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_relief_plus.json b/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_relief_plus.json index fd875fcd2..33294c1ef 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_relief_plus.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_relief_plus.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:quartzite_relief_plus" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_relief_right.json b/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_relief_right.json index 849659f68..0dcfa267f 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_relief_right.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_relief_right.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:quartzite_relief_right" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_relief_sword.json b/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_relief_sword.json index bc1a5d023..8e44de9f1 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_relief_sword.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_relief_sword.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:quartzite_relief_sword" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_relief_vertical.json b/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_relief_vertical.json index 4da04eb68..4fb805249 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_relief_vertical.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_relief_vertical.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:quartzite_relief_vertical" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_slab.json index 5e8e6c7e2..6ce098e4c 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:quartzite_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_smooth.json b/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_smooth.json index 4aa8ffa11..9d5bff0b2 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_smooth.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_smooth.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:quartzite_smooth" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_smooth_brick.json b/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_smooth_brick.json index 0af1ae802..fdcb2d81d 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_smooth_brick.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_smooth_brick.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:quartzite_smooth_brick" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_smooth_brick_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_smooth_brick_furnace.json index bb2946fd3..5cc90f749 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_smooth_brick_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_smooth_brick_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:quartzite_smooth_brick_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_smooth_brick_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_smooth_brick_slab.json index 65d17f07c..0227bb6a8 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_smooth_brick_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_smooth_brick_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:quartzite_smooth_brick_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_smooth_brick_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_smooth_brick_stairs.json index 472afce3c..95f09249e 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_smooth_brick_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_smooth_brick_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:quartzite_smooth_brick_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_smooth_brick_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_smooth_brick_wall.json index 3f543d898..296284c7f 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_smooth_brick_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_smooth_brick_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:quartzite_smooth_brick_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_smooth_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_smooth_furnace.json index b801b07e5..b6c9e40a2 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_smooth_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_smooth_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:quartzite_smooth_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_smooth_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_smooth_slab.json index df130054d..77a80e05f 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_smooth_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_smooth_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:quartzite_smooth_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_smooth_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_smooth_stairs.json index 5077ff761..36aae94ce 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_smooth_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_smooth_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:quartzite_smooth_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_smooth_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_smooth_wall.json index 0064e4c8d..1ef837fb5 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_smooth_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_smooth_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:quartzite_smooth_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_stairs.json index 22edbbdf4..c6451b0bc 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:quartzite_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_wall.json index b36306521..2b70759a3 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/quartzite_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:quartzite_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_brick.json b/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_brick.json index e775239ec..360692158 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_brick.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_brick.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:rhyolite_brick" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_brick_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_brick_furnace.json index 90937f5ac..03901f5e8 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_brick_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_brick_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:rhyolite_brick_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_brick_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_brick_slab.json index f23ba4f21..303d86313 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_brick_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_brick_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:rhyolite_brick_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_brick_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_brick_stairs.json index 2c93eba5e..32d8c7b5b 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_brick_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_brick_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:rhyolite_brick_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_brick_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_brick_wall.json index eb65ee273..8da7b494c 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_brick_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_brick_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:rhyolite_brick_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_furnace.json index fcd71d602..9cccbb408 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:rhyolite_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_relief_axe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_relief_axe.json index 516f83337..cd6ac4b21 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_relief_axe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_relief_axe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:rhyolite_relief_axe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_relief_blank.json b/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_relief_blank.json index 3a3e3c617..859457632 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_relief_blank.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_relief_blank.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:rhyolite_relief_blank" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_relief_cross.json b/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_relief_cross.json index dc0b0b567..5af803119 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_relief_cross.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_relief_cross.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:rhyolite_relief_cross" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_relief_hammer.json b/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_relief_hammer.json index 0a7e3ed21..db9c0095d 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_relief_hammer.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_relief_hammer.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:rhyolite_relief_hammer" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_relief_hoe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_relief_hoe.json index cd40b2852..50cd72b6c 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_relief_hoe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_relief_hoe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:rhyolite_relief_hoe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_relief_horizontal.json b/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_relief_horizontal.json index f8f1390ca..08e9ab1b6 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_relief_horizontal.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_relief_horizontal.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:rhyolite_relief_horizontal" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_relief_i.json b/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_relief_i.json index 316e43ee6..7acdcc116 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_relief_i.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_relief_i.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:rhyolite_relief_i" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_relief_left.json b/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_relief_left.json index 7d6eda406..3f8b65b7f 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_relief_left.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_relief_left.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:rhyolite_relief_left" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_relief_pickaxe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_relief_pickaxe.json index da27ab230..1854627d6 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_relief_pickaxe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_relief_pickaxe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:rhyolite_relief_pickaxe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_relief_plus.json b/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_relief_plus.json index 3a661fdda..cbd0a600a 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_relief_plus.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_relief_plus.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:rhyolite_relief_plus" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_relief_right.json b/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_relief_right.json index f3f7e1b1b..f9918443b 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_relief_right.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_relief_right.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:rhyolite_relief_right" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_relief_sword.json b/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_relief_sword.json index 7aca4f263..c88db4b96 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_relief_sword.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_relief_sword.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:rhyolite_relief_sword" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_relief_vertical.json b/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_relief_vertical.json index 1398da0f2..1d3dd7e30 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_relief_vertical.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_relief_vertical.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:rhyolite_relief_vertical" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_slab.json index 0884efb01..6f4a452b5 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:rhyolite_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_smooth.json b/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_smooth.json index 44f17f214..96e9a157f 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_smooth.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_smooth.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:rhyolite_smooth" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_smooth_brick.json b/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_smooth_brick.json index d9859de57..950b210d4 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_smooth_brick.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_smooth_brick.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:rhyolite_smooth_brick" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_smooth_brick_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_smooth_brick_furnace.json index 988725a88..8654d4c02 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_smooth_brick_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_smooth_brick_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:rhyolite_smooth_brick_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_smooth_brick_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_smooth_brick_slab.json index 8d422705c..7283fcae1 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_smooth_brick_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_smooth_brick_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:rhyolite_smooth_brick_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_smooth_brick_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_smooth_brick_stairs.json index d569d453b..00de325bb 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_smooth_brick_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_smooth_brick_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:rhyolite_smooth_brick_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_smooth_brick_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_smooth_brick_wall.json index 840bb8321..e61692bca 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_smooth_brick_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_smooth_brick_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:rhyolite_smooth_brick_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_smooth_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_smooth_furnace.json index c16e06c25..fc7df7e08 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_smooth_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_smooth_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:rhyolite_smooth_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_smooth_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_smooth_slab.json index 608a0ddac..79444f52f 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_smooth_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_smooth_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:rhyolite_smooth_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_smooth_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_smooth_stairs.json index 58604afc5..c9c0e49d7 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_smooth_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_smooth_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:rhyolite_smooth_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_smooth_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_smooth_wall.json index d657656c8..dfd00b45e 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_smooth_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_smooth_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:rhyolite_smooth_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_stairs.json index 408f7bd5b..64cb9f1bd 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:rhyolite_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_wall.json index de294a11b..53c547faf 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/rhyolite_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:rhyolite_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_brick.json b/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_brick.json index f56fb0006..5f5c5aa0a 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_brick.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_brick.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:rock_salt_brick" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_brick_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_brick_furnace.json index 097f1b072..a1eb298f4 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_brick_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_brick_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:rock_salt_brick_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_brick_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_brick_slab.json index 21a0bde82..7808110d2 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_brick_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_brick_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:rock_salt_brick_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_brick_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_brick_stairs.json index 28663d4c4..d9fe19952 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_brick_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_brick_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:rock_salt_brick_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_brick_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_brick_wall.json index 3212073a7..ece643030 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_brick_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_brick_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:rock_salt_brick_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_furnace.json index 606f01833..a5397c9c5 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:rock_salt_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_relief_axe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_relief_axe.json index cced9932d..66dbe96dd 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_relief_axe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_relief_axe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:rock_salt_relief_axe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_relief_blank.json b/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_relief_blank.json index 1d46a8ae6..d0e9d753d 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_relief_blank.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_relief_blank.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:rock_salt_relief_blank" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_relief_cross.json b/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_relief_cross.json index 8c2394d6a..623430f49 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_relief_cross.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_relief_cross.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:rock_salt_relief_cross" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_relief_hammer.json b/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_relief_hammer.json index 3f56cbe68..85a2ad421 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_relief_hammer.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_relief_hammer.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:rock_salt_relief_hammer" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_relief_hoe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_relief_hoe.json index 5abcbcfde..e4daab759 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_relief_hoe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_relief_hoe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:rock_salt_relief_hoe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_relief_horizontal.json b/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_relief_horizontal.json index 5382dfa4f..a62305452 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_relief_horizontal.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_relief_horizontal.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:rock_salt_relief_horizontal" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_relief_i.json b/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_relief_i.json index eddac9996..67f0a8fa5 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_relief_i.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_relief_i.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:rock_salt_relief_i" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_relief_left.json b/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_relief_left.json index 5d97d8068..d97133356 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_relief_left.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_relief_left.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:rock_salt_relief_left" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_relief_pickaxe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_relief_pickaxe.json index e51ad484a..76dfe944c 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_relief_pickaxe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_relief_pickaxe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:rock_salt_relief_pickaxe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_relief_plus.json b/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_relief_plus.json index 0f2fd5e30..c0a893a03 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_relief_plus.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_relief_plus.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:rock_salt_relief_plus" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_relief_right.json b/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_relief_right.json index 037b139f4..fd2e523d2 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_relief_right.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_relief_right.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:rock_salt_relief_right" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_relief_sword.json b/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_relief_sword.json index 7656f7132..4922ab7d3 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_relief_sword.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_relief_sword.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:rock_salt_relief_sword" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_relief_vertical.json b/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_relief_vertical.json index f585010bd..712e31985 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_relief_vertical.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_relief_vertical.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:rock_salt_relief_vertical" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_slab.json index a6456a784..1a7da72ab 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:rock_salt_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_smooth.json b/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_smooth.json index 4c6d5b828..a5ef72689 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_smooth.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_smooth.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:rock_salt_smooth" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_smooth_brick.json b/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_smooth_brick.json index 2b3179c96..b36c0a482 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_smooth_brick.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_smooth_brick.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:rock_salt_smooth_brick" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_smooth_brick_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_smooth_brick_furnace.json index 8b9395f74..affb95ab6 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_smooth_brick_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_smooth_brick_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:rock_salt_smooth_brick_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_smooth_brick_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_smooth_brick_slab.json index f82520d7b..d315cf6fc 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_smooth_brick_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_smooth_brick_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:rock_salt_smooth_brick_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_smooth_brick_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_smooth_brick_stairs.json index fe738fda3..dccd659b1 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_smooth_brick_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_smooth_brick_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:rock_salt_smooth_brick_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_smooth_brick_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_smooth_brick_wall.json index e144664e7..61f34d8ee 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_smooth_brick_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_smooth_brick_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:rock_salt_smooth_brick_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_smooth_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_smooth_furnace.json index af053a4a0..978933ba5 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_smooth_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_smooth_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:rock_salt_smooth_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_smooth_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_smooth_slab.json index 7bce28d56..51a03807a 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_smooth_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_smooth_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:rock_salt_smooth_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_smooth_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_smooth_stairs.json index 188c597d1..6ffb3fd15 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_smooth_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_smooth_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:rock_salt_smooth_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_smooth_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_smooth_wall.json index 626ae95ad..303ad6e96 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_smooth_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_smooth_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:rock_salt_smooth_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_stairs.json index fa705de0e..6e0ab8ac1 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:rock_salt_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_wall.json index a7919b7d8..d0d6a87a7 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/rock_salt_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:rock_salt_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/schist_brick.json b/src/main/resources/data/mineralogy/loot_tables/blocks/schist_brick.json index c294eeedf..d235b1288 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/schist_brick.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/schist_brick.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:schist_brick" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/schist_brick_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/schist_brick_furnace.json index ab37974db..066de2c2a 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/schist_brick_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/schist_brick_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:schist_brick_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/schist_brick_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/schist_brick_slab.json index f880c0be0..fcddf1d46 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/schist_brick_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/schist_brick_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:schist_brick_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/schist_brick_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/schist_brick_stairs.json index 38e2c797b..aab080404 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/schist_brick_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/schist_brick_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:schist_brick_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/schist_brick_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/schist_brick_wall.json index 5164673fc..d1bbdbcec 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/schist_brick_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/schist_brick_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:schist_brick_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/schist_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/schist_furnace.json index 7c597c354..b8ccd3ce8 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/schist_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/schist_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:schist_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/schist_relief_axe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/schist_relief_axe.json index c332f3470..0443f7e3f 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/schist_relief_axe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/schist_relief_axe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:schist_relief_axe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/schist_relief_blank.json b/src/main/resources/data/mineralogy/loot_tables/blocks/schist_relief_blank.json index ae492ffbe..b84aed398 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/schist_relief_blank.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/schist_relief_blank.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:schist_relief_blank" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/schist_relief_cross.json b/src/main/resources/data/mineralogy/loot_tables/blocks/schist_relief_cross.json index 62da0948f..4057a68ae 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/schist_relief_cross.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/schist_relief_cross.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:schist_relief_cross" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/schist_relief_hammer.json b/src/main/resources/data/mineralogy/loot_tables/blocks/schist_relief_hammer.json index 243a4ca45..ca86e90ac 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/schist_relief_hammer.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/schist_relief_hammer.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:schist_relief_hammer" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/schist_relief_hoe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/schist_relief_hoe.json index 196ec62c4..d02eca0c7 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/schist_relief_hoe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/schist_relief_hoe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:schist_relief_hoe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/schist_relief_horizontal.json b/src/main/resources/data/mineralogy/loot_tables/blocks/schist_relief_horizontal.json index 1b3f6d3b6..639b6021c 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/schist_relief_horizontal.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/schist_relief_horizontal.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:schist_relief_horizontal" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/schist_relief_i.json b/src/main/resources/data/mineralogy/loot_tables/blocks/schist_relief_i.json index ec61f6f04..d20356e60 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/schist_relief_i.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/schist_relief_i.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:schist_relief_i" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/schist_relief_left.json b/src/main/resources/data/mineralogy/loot_tables/blocks/schist_relief_left.json index 0f42b93a1..d2d799e8f 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/schist_relief_left.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/schist_relief_left.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:schist_relief_left" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/schist_relief_pickaxe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/schist_relief_pickaxe.json index 2b1555cd3..dac02b209 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/schist_relief_pickaxe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/schist_relief_pickaxe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:schist_relief_pickaxe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/schist_relief_plus.json b/src/main/resources/data/mineralogy/loot_tables/blocks/schist_relief_plus.json index 0fdbd415d..5f97afe22 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/schist_relief_plus.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/schist_relief_plus.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:schist_relief_plus" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/schist_relief_right.json b/src/main/resources/data/mineralogy/loot_tables/blocks/schist_relief_right.json index 728a5361b..dbe9738b7 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/schist_relief_right.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/schist_relief_right.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:schist_relief_right" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/schist_relief_sword.json b/src/main/resources/data/mineralogy/loot_tables/blocks/schist_relief_sword.json index 59e14063d..fe0fe0274 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/schist_relief_sword.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/schist_relief_sword.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:schist_relief_sword" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/schist_relief_vertical.json b/src/main/resources/data/mineralogy/loot_tables/blocks/schist_relief_vertical.json index c557ceec8..f376ca29d 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/schist_relief_vertical.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/schist_relief_vertical.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:schist_relief_vertical" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/schist_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/schist_slab.json index 8774be1fd..b4d5a5efc 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/schist_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/schist_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:schist_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/schist_smooth.json b/src/main/resources/data/mineralogy/loot_tables/blocks/schist_smooth.json index 221a78728..db4056962 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/schist_smooth.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/schist_smooth.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:schist_smooth" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/schist_smooth_brick.json b/src/main/resources/data/mineralogy/loot_tables/blocks/schist_smooth_brick.json index 3b83ce8d1..e720c1763 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/schist_smooth_brick.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/schist_smooth_brick.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:schist_smooth_brick" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/schist_smooth_brick_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/schist_smooth_brick_furnace.json index eca3ec471..c520093bb 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/schist_smooth_brick_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/schist_smooth_brick_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:schist_smooth_brick_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/schist_smooth_brick_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/schist_smooth_brick_slab.json index 3cae7df11..e79639a28 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/schist_smooth_brick_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/schist_smooth_brick_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:schist_smooth_brick_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/schist_smooth_brick_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/schist_smooth_brick_stairs.json index 14ed5e9e9..1fff9c247 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/schist_smooth_brick_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/schist_smooth_brick_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:schist_smooth_brick_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/schist_smooth_brick_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/schist_smooth_brick_wall.json index eb36c5fc7..564e1748f 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/schist_smooth_brick_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/schist_smooth_brick_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:schist_smooth_brick_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/schist_smooth_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/schist_smooth_furnace.json index 6eb021f53..b3d533fe6 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/schist_smooth_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/schist_smooth_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:schist_smooth_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/schist_smooth_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/schist_smooth_slab.json index 24ab93f42..8efa53897 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/schist_smooth_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/schist_smooth_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:schist_smooth_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/schist_smooth_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/schist_smooth_stairs.json index 41b1a221c..628116aa4 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/schist_smooth_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/schist_smooth_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:schist_smooth_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/schist_smooth_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/schist_smooth_wall.json index 1f1d3bbc5..fcee512a2 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/schist_smooth_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/schist_smooth_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:schist_smooth_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/schist_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/schist_stairs.json index 8035687a6..f63b39fd4 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/schist_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/schist_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:schist_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/schist_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/schist_wall.json index 57947a6e0..eb657d75f 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/schist_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/schist_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:schist_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_brick.json b/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_brick.json index 0d044196c..b16ea06f2 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_brick.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_brick.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:scoria_brick" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_brick_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_brick_furnace.json index 0a45db0d8..d0d52fdd3 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_brick_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_brick_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:scoria_brick_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_brick_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_brick_slab.json index c6ec58395..df92d438b 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_brick_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_brick_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:scoria_brick_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_brick_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_brick_stairs.json index d8dd96c27..f0ce18abf 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_brick_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_brick_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:scoria_brick_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_brick_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_brick_wall.json index 98a2b1f9d..bae0744fa 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_brick_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_brick_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:scoria_brick_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_furnace.json index 74830d68e..cf4228cc7 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:scoria_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_relief_axe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_relief_axe.json index c11181cc7..d975195ac 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_relief_axe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_relief_axe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:scoria_relief_axe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_relief_blank.json b/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_relief_blank.json index 57d20b805..689f9c1b2 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_relief_blank.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_relief_blank.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:scoria_relief_blank" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_relief_cross.json b/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_relief_cross.json index 2e577a935..698640043 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_relief_cross.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_relief_cross.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:scoria_relief_cross" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_relief_hammer.json b/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_relief_hammer.json index ef6e23f9d..c99c07450 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_relief_hammer.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_relief_hammer.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:scoria_relief_hammer" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_relief_hoe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_relief_hoe.json index 7c548eee4..37fa5ee7b 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_relief_hoe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_relief_hoe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:scoria_relief_hoe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_relief_horizontal.json b/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_relief_horizontal.json index def92e17b..ba55c4851 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_relief_horizontal.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_relief_horizontal.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:scoria_relief_horizontal" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_relief_i.json b/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_relief_i.json index cc28aadb8..55aca0d75 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_relief_i.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_relief_i.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:scoria_relief_i" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_relief_left.json b/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_relief_left.json index d68135bad..fb48074f8 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_relief_left.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_relief_left.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:scoria_relief_left" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_relief_pickaxe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_relief_pickaxe.json index fb9114ea3..2025f10a9 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_relief_pickaxe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_relief_pickaxe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:scoria_relief_pickaxe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_relief_plus.json b/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_relief_plus.json index fe4a73f2e..96d9b90df 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_relief_plus.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_relief_plus.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:scoria_relief_plus" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_relief_right.json b/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_relief_right.json index 815dae9d3..a2451956e 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_relief_right.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_relief_right.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:scoria_relief_right" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_relief_sword.json b/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_relief_sword.json index 8e7a048a8..8430a4669 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_relief_sword.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_relief_sword.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:scoria_relief_sword" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_relief_vertical.json b/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_relief_vertical.json index ae9ad92f9..c72777580 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_relief_vertical.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_relief_vertical.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:scoria_relief_vertical" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_slab.json index 3e42f1dd5..fff81ac0c 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:scoria_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_smooth.json b/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_smooth.json index e4b77650c..999085a23 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_smooth.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_smooth.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:scoria_smooth" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_smooth_brick.json b/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_smooth_brick.json index e81f4e2c1..590b1868c 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_smooth_brick.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_smooth_brick.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:scoria_smooth_brick" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_smooth_brick_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_smooth_brick_furnace.json index 6755f0ef4..a4fcae5c1 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_smooth_brick_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_smooth_brick_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:scoria_smooth_brick_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_smooth_brick_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_smooth_brick_slab.json index d432ce8dc..5bd1db9e7 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_smooth_brick_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_smooth_brick_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:scoria_smooth_brick_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_smooth_brick_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_smooth_brick_stairs.json index 4a4e02895..36f52cb27 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_smooth_brick_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_smooth_brick_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:scoria_smooth_brick_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_smooth_brick_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_smooth_brick_wall.json index 24bc71057..dce603e20 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_smooth_brick_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_smooth_brick_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:scoria_smooth_brick_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_smooth_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_smooth_furnace.json index f757aba8e..917a8222f 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_smooth_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_smooth_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:scoria_smooth_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_smooth_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_smooth_slab.json index b41a3a651..46ba85791 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_smooth_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_smooth_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:scoria_smooth_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_smooth_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_smooth_stairs.json index f8f4544a9..add67b20b 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_smooth_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_smooth_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:scoria_smooth_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_smooth_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_smooth_wall.json index f831be9a6..098d15bd9 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_smooth_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_smooth_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:scoria_smooth_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_stairs.json index 7c2da5b9a..abe86d9a6 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:scoria_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_wall.json index 8883f24d9..9ab2df65d 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/scoria_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:scoria_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/shale_brick.json b/src/main/resources/data/mineralogy/loot_tables/blocks/shale_brick.json index 85d850e0c..2114f619e 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/shale_brick.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/shale_brick.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:shale_brick" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/shale_brick_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/shale_brick_furnace.json index 07fa6e9c9..5dfeb6445 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/shale_brick_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/shale_brick_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:shale_brick_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/shale_brick_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/shale_brick_slab.json index cbb87652a..cec461ce9 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/shale_brick_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/shale_brick_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:shale_brick_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/shale_brick_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/shale_brick_stairs.json index 264afaab1..bf3549d46 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/shale_brick_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/shale_brick_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:shale_brick_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/shale_brick_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/shale_brick_wall.json index 6cc342c43..f99f17947 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/shale_brick_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/shale_brick_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:shale_brick_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/shale_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/shale_furnace.json index 5e3141802..5f7525ac6 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/shale_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/shale_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:shale_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/shale_relief_axe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/shale_relief_axe.json index bb5a28786..fdc2434bb 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/shale_relief_axe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/shale_relief_axe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:shale_relief_axe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/shale_relief_blank.json b/src/main/resources/data/mineralogy/loot_tables/blocks/shale_relief_blank.json index 8da82cbc8..d2859a0d0 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/shale_relief_blank.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/shale_relief_blank.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:shale_relief_blank" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/shale_relief_cross.json b/src/main/resources/data/mineralogy/loot_tables/blocks/shale_relief_cross.json index 7299dc682..ce5e951eb 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/shale_relief_cross.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/shale_relief_cross.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:shale_relief_cross" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/shale_relief_hammer.json b/src/main/resources/data/mineralogy/loot_tables/blocks/shale_relief_hammer.json index 66e174d2f..7bb867809 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/shale_relief_hammer.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/shale_relief_hammer.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:shale_relief_hammer" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/shale_relief_hoe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/shale_relief_hoe.json index 14625bc40..9ab9404ae 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/shale_relief_hoe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/shale_relief_hoe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:shale_relief_hoe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/shale_relief_horizontal.json b/src/main/resources/data/mineralogy/loot_tables/blocks/shale_relief_horizontal.json index 8b3e8ffe3..65f9d0ec5 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/shale_relief_horizontal.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/shale_relief_horizontal.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:shale_relief_horizontal" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/shale_relief_i.json b/src/main/resources/data/mineralogy/loot_tables/blocks/shale_relief_i.json index 0e1dad0b4..574567e34 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/shale_relief_i.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/shale_relief_i.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:shale_relief_i" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/shale_relief_left.json b/src/main/resources/data/mineralogy/loot_tables/blocks/shale_relief_left.json index ae5a8615c..8489de282 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/shale_relief_left.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/shale_relief_left.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:shale_relief_left" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/shale_relief_pickaxe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/shale_relief_pickaxe.json index eac384a90..c5ba65ee1 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/shale_relief_pickaxe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/shale_relief_pickaxe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:shale_relief_pickaxe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/shale_relief_plus.json b/src/main/resources/data/mineralogy/loot_tables/blocks/shale_relief_plus.json index 540e5bc06..37b50133b 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/shale_relief_plus.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/shale_relief_plus.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:shale_relief_plus" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/shale_relief_right.json b/src/main/resources/data/mineralogy/loot_tables/blocks/shale_relief_right.json index 6cf1c360f..83594b644 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/shale_relief_right.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/shale_relief_right.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:shale_relief_right" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/shale_relief_sword.json b/src/main/resources/data/mineralogy/loot_tables/blocks/shale_relief_sword.json index 1a6c682e1..0606dbc54 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/shale_relief_sword.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/shale_relief_sword.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:shale_relief_sword" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/shale_relief_vertical.json b/src/main/resources/data/mineralogy/loot_tables/blocks/shale_relief_vertical.json index 58bd7a590..9edb7eb3c 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/shale_relief_vertical.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/shale_relief_vertical.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:shale_relief_vertical" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/shale_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/shale_slab.json index 94d303e86..3f70c1bec 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/shale_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/shale_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:shale_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/shale_smooth.json b/src/main/resources/data/mineralogy/loot_tables/blocks/shale_smooth.json index 37c11f549..c8cc70255 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/shale_smooth.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/shale_smooth.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:shale_smooth" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/shale_smooth_brick.json b/src/main/resources/data/mineralogy/loot_tables/blocks/shale_smooth_brick.json index cd5451a79..d0edcdacc 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/shale_smooth_brick.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/shale_smooth_brick.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:shale_smooth_brick" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/shale_smooth_brick_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/shale_smooth_brick_furnace.json index 48205031b..20bf76647 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/shale_smooth_brick_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/shale_smooth_brick_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:shale_smooth_brick_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/shale_smooth_brick_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/shale_smooth_brick_slab.json index d3a954e2a..ff7af46ae 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/shale_smooth_brick_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/shale_smooth_brick_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:shale_smooth_brick_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/shale_smooth_brick_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/shale_smooth_brick_stairs.json index a275c3661..8ea18a551 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/shale_smooth_brick_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/shale_smooth_brick_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:shale_smooth_brick_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/shale_smooth_brick_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/shale_smooth_brick_wall.json index be937a849..7b97d1662 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/shale_smooth_brick_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/shale_smooth_brick_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:shale_smooth_brick_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/shale_smooth_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/shale_smooth_furnace.json index 22bcf9102..feed3fed0 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/shale_smooth_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/shale_smooth_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:shale_smooth_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/shale_smooth_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/shale_smooth_slab.json index f20c2b2f4..92d27eb79 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/shale_smooth_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/shale_smooth_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:shale_smooth_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/shale_smooth_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/shale_smooth_stairs.json index e3a9cc9f8..6e8142613 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/shale_smooth_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/shale_smooth_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:shale_smooth_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/shale_smooth_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/shale_smooth_wall.json index 1a32e9d79..9add4a61a 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/shale_smooth_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/shale_smooth_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:shale_smooth_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/shale_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/shale_stairs.json index a43d326ae..bec16fbca 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/shale_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/shale_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:shale_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/shale_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/shale_wall.json index 7d683184c..74087b50b 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/shale_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/shale_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:shale_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_brick.json b/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_brick.json index 80d45dbf2..4c6617dae 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_brick.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_brick.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:siltstone_brick" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_brick_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_brick_furnace.json index afe67e23e..aa4a884b8 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_brick_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_brick_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:siltstone_brick_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_brick_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_brick_slab.json index 7c5029a10..49f40319c 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_brick_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_brick_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:siltstone_brick_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_brick_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_brick_stairs.json index e240c50da..64ca16067 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_brick_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_brick_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:siltstone_brick_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_brick_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_brick_wall.json index e8bd8ae97..9e3f11a7f 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_brick_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_brick_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:siltstone_brick_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_furnace.json index 34d652636..65fa0497c 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:siltstone_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_relief_axe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_relief_axe.json index e1fb936bf..3a19b9024 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_relief_axe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_relief_axe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:siltstone_relief_axe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_relief_blank.json b/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_relief_blank.json index be2ebff7c..67fac389a 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_relief_blank.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_relief_blank.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:siltstone_relief_blank" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_relief_cross.json b/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_relief_cross.json index 4e67f11b9..16971a4d3 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_relief_cross.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_relief_cross.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:siltstone_relief_cross" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_relief_hammer.json b/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_relief_hammer.json index c620f5895..f8a0b23c8 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_relief_hammer.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_relief_hammer.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:siltstone_relief_hammer" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_relief_hoe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_relief_hoe.json index 6e7af6a37..b18addc05 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_relief_hoe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_relief_hoe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:siltstone_relief_hoe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_relief_horizontal.json b/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_relief_horizontal.json index 8aa618b5d..330803257 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_relief_horizontal.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_relief_horizontal.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:siltstone_relief_horizontal" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_relief_i.json b/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_relief_i.json index 1f2a401e0..892f292b1 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_relief_i.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_relief_i.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:siltstone_relief_i" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_relief_left.json b/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_relief_left.json index 9fba33601..d88db5b35 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_relief_left.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_relief_left.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:siltstone_relief_left" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_relief_pickaxe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_relief_pickaxe.json index ed7f9fed7..14a0088d7 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_relief_pickaxe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_relief_pickaxe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:siltstone_relief_pickaxe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_relief_plus.json b/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_relief_plus.json index e9816dbca..1350af064 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_relief_plus.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_relief_plus.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:siltstone_relief_plus" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_relief_right.json b/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_relief_right.json index 161a34880..30f0fdaf6 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_relief_right.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_relief_right.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:siltstone_relief_right" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_relief_sword.json b/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_relief_sword.json index 8a01dfff8..77e75fc1a 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_relief_sword.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_relief_sword.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:siltstone_relief_sword" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_relief_vertical.json b/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_relief_vertical.json index c25df7193..37234e191 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_relief_vertical.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_relief_vertical.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:siltstone_relief_vertical" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_slab.json index 0bc16f8a6..c6ff43a44 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:siltstone_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_smooth.json b/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_smooth.json index a33cba5e2..3ccf86268 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_smooth.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_smooth.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:siltstone_smooth" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_smooth_brick.json b/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_smooth_brick.json index ac6a8e863..a6054446d 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_smooth_brick.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_smooth_brick.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:siltstone_smooth_brick" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_smooth_brick_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_smooth_brick_furnace.json index d7fdd4647..410d9c90e 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_smooth_brick_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_smooth_brick_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:siltstone_smooth_brick_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_smooth_brick_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_smooth_brick_slab.json index 967c9cb04..551f3418a 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_smooth_brick_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_smooth_brick_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:siltstone_smooth_brick_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_smooth_brick_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_smooth_brick_stairs.json index 9572f861d..b871e1959 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_smooth_brick_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_smooth_brick_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:siltstone_smooth_brick_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_smooth_brick_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_smooth_brick_wall.json index 4572e7503..bfe5baf15 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_smooth_brick_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_smooth_brick_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:siltstone_smooth_brick_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_smooth_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_smooth_furnace.json index 7c6c5bb2c..e1ad7bb46 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_smooth_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_smooth_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:siltstone_smooth_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_smooth_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_smooth_slab.json index c21601a79..0cfcc288e 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_smooth_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_smooth_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:siltstone_smooth_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_smooth_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_smooth_stairs.json index 68d8bf107..63913c8d4 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_smooth_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_smooth_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:siltstone_smooth_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_smooth_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_smooth_wall.json index f634884cb..b2d36d3b8 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_smooth_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_smooth_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:siltstone_smooth_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_stairs.json index 16dcfd527..c105e82c0 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:siltstone_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_wall.json index 1b91213f5..f280d901d 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/siltstone_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:siltstone_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/slate_brick.json b/src/main/resources/data/mineralogy/loot_tables/blocks/slate_brick.json index 81b999501..4260f0503 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/slate_brick.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/slate_brick.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:slate_brick" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/slate_brick_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/slate_brick_furnace.json index e996f7178..b46bcaca3 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/slate_brick_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/slate_brick_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:slate_brick_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/slate_brick_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/slate_brick_slab.json index 78c019cdb..b56c7fd68 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/slate_brick_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/slate_brick_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:slate_brick_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/slate_brick_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/slate_brick_stairs.json index 088969b37..aeee23ba5 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/slate_brick_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/slate_brick_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:slate_brick_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/slate_brick_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/slate_brick_wall.json index b3b670afe..6a1557a67 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/slate_brick_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/slate_brick_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:slate_brick_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/slate_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/slate_furnace.json index 43f96590f..62be12964 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/slate_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/slate_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:slate_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/slate_relief_axe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/slate_relief_axe.json index 03da96a4b..e4b09b152 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/slate_relief_axe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/slate_relief_axe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:slate_relief_axe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/slate_relief_blank.json b/src/main/resources/data/mineralogy/loot_tables/blocks/slate_relief_blank.json index a689d85f3..03723c3cc 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/slate_relief_blank.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/slate_relief_blank.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:slate_relief_blank" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/slate_relief_cross.json b/src/main/resources/data/mineralogy/loot_tables/blocks/slate_relief_cross.json index c20520aab..0187f0be3 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/slate_relief_cross.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/slate_relief_cross.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:slate_relief_cross" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/slate_relief_hammer.json b/src/main/resources/data/mineralogy/loot_tables/blocks/slate_relief_hammer.json index c32efc43f..7e05505b1 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/slate_relief_hammer.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/slate_relief_hammer.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:slate_relief_hammer" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/slate_relief_hoe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/slate_relief_hoe.json index c619eecd5..629da5fa6 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/slate_relief_hoe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/slate_relief_hoe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:slate_relief_hoe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/slate_relief_horizontal.json b/src/main/resources/data/mineralogy/loot_tables/blocks/slate_relief_horizontal.json index a88ad346f..9b72c7ff7 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/slate_relief_horizontal.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/slate_relief_horizontal.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:slate_relief_horizontal" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/slate_relief_i.json b/src/main/resources/data/mineralogy/loot_tables/blocks/slate_relief_i.json index db2fc9b1f..eb9f02bfc 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/slate_relief_i.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/slate_relief_i.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:slate_relief_i" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/slate_relief_left.json b/src/main/resources/data/mineralogy/loot_tables/blocks/slate_relief_left.json index 2cf7449f9..47b2a49c0 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/slate_relief_left.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/slate_relief_left.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:slate_relief_left" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/slate_relief_pickaxe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/slate_relief_pickaxe.json index 162712612..30bd4738a 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/slate_relief_pickaxe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/slate_relief_pickaxe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:slate_relief_pickaxe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/slate_relief_plus.json b/src/main/resources/data/mineralogy/loot_tables/blocks/slate_relief_plus.json index 4ef1ea0d6..614dd0afb 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/slate_relief_plus.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/slate_relief_plus.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:slate_relief_plus" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/slate_relief_right.json b/src/main/resources/data/mineralogy/loot_tables/blocks/slate_relief_right.json index 9e4a3c56e..98816b612 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/slate_relief_right.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/slate_relief_right.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:slate_relief_right" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/slate_relief_sword.json b/src/main/resources/data/mineralogy/loot_tables/blocks/slate_relief_sword.json index a0ef4465f..2dad86a9a 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/slate_relief_sword.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/slate_relief_sword.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:slate_relief_sword" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/slate_relief_vertical.json b/src/main/resources/data/mineralogy/loot_tables/blocks/slate_relief_vertical.json index 81976ced8..c4dbb601e 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/slate_relief_vertical.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/slate_relief_vertical.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:slate_relief_vertical" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/slate_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/slate_slab.json index f9cf2ba1b..d53a7bf75 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/slate_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/slate_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:slate_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/slate_smooth.json b/src/main/resources/data/mineralogy/loot_tables/blocks/slate_smooth.json index 39c6b712e..f4008d8e7 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/slate_smooth.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/slate_smooth.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:slate_smooth" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/slate_smooth_brick.json b/src/main/resources/data/mineralogy/loot_tables/blocks/slate_smooth_brick.json index 120a45201..a61dadb6e 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/slate_smooth_brick.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/slate_smooth_brick.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:slate_smooth_brick" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/slate_smooth_brick_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/slate_smooth_brick_furnace.json index dfe1657eb..7f249f480 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/slate_smooth_brick_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/slate_smooth_brick_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:slate_smooth_brick_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/slate_smooth_brick_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/slate_smooth_brick_slab.json index 64e7d26ee..913ae17ed 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/slate_smooth_brick_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/slate_smooth_brick_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:slate_smooth_brick_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/slate_smooth_brick_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/slate_smooth_brick_stairs.json index 7504b3641..4c6ba7a33 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/slate_smooth_brick_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/slate_smooth_brick_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:slate_smooth_brick_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/slate_smooth_brick_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/slate_smooth_brick_wall.json index 6afe46048..9fd58f325 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/slate_smooth_brick_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/slate_smooth_brick_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:slate_smooth_brick_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/slate_smooth_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/slate_smooth_furnace.json index 6f6660729..899ae91fa 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/slate_smooth_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/slate_smooth_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:slate_smooth_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/slate_smooth_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/slate_smooth_slab.json index 3f718cbdc..c1dda1d67 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/slate_smooth_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/slate_smooth_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:slate_smooth_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/slate_smooth_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/slate_smooth_stairs.json index b059bec96..0598dcd19 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/slate_smooth_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/slate_smooth_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:slate_smooth_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/slate_smooth_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/slate_smooth_wall.json index b77d56b42..e47d1a99a 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/slate_smooth_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/slate_smooth_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:slate_smooth_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/slate_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/slate_stairs.json index ab4b4a31f..e44f94720 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/slate_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/slate_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:slate_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/slate_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/slate_wall.json index c8c7894f7..9ceb9b468 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/slate_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/slate_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:slate_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_brick.json b/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_brick.json index 56f9b9762..f484f2ba0 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_brick.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_brick.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:tuff_brick" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_brick_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_brick_furnace.json index 74484a586..d5309780b 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_brick_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_brick_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:tuff_brick_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_brick_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_brick_slab.json index 678555d41..2763d885f 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_brick_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_brick_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:tuff_brick_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_brick_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_brick_stairs.json index 182bc7c07..359c1fd34 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_brick_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_brick_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:tuff_brick_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_brick_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_brick_wall.json index ea8877de1..56af1243c 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_brick_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_brick_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:tuff_brick_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_furnace.json index 1081b24b1..1af13468a 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:tuff_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_relief_axe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_relief_axe.json index b9388287e..8c0823a45 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_relief_axe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_relief_axe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:tuff_relief_axe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_relief_blank.json b/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_relief_blank.json index 2f6426785..6f194f49a 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_relief_blank.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_relief_blank.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:tuff_relief_blank" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_relief_cross.json b/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_relief_cross.json index 3f71676d0..5815ec5a7 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_relief_cross.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_relief_cross.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:tuff_relief_cross" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_relief_hammer.json b/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_relief_hammer.json index cbe78a7bd..ac94d0f34 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_relief_hammer.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_relief_hammer.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:tuff_relief_hammer" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_relief_hoe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_relief_hoe.json index 45be8444f..4dc25b6f3 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_relief_hoe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_relief_hoe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:tuff_relief_hoe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_relief_horizontal.json b/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_relief_horizontal.json index 0442c8f39..05a7eb730 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_relief_horizontal.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_relief_horizontal.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:tuff_relief_horizontal" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_relief_i.json b/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_relief_i.json index 3582a94dc..2099098d5 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_relief_i.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_relief_i.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:tuff_relief_i" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_relief_left.json b/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_relief_left.json index ab26240f3..318abb5f9 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_relief_left.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_relief_left.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:tuff_relief_left" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_relief_pickaxe.json b/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_relief_pickaxe.json index c82476c08..1b5941354 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_relief_pickaxe.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_relief_pickaxe.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:tuff_relief_pickaxe" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_relief_plus.json b/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_relief_plus.json index 6da97e2d7..975cb82d1 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_relief_plus.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_relief_plus.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:tuff_relief_plus" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_relief_right.json b/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_relief_right.json index 76b34a1eb..61fc27e44 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_relief_right.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_relief_right.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:tuff_relief_right" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_relief_sword.json b/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_relief_sword.json index da4755885..b50ee8821 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_relief_sword.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_relief_sword.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:tuff_relief_sword" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_relief_vertical.json b/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_relief_vertical.json index f70ea3ae2..5f50eaacc 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_relief_vertical.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_relief_vertical.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:tuff_relief_vertical" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_slab.json index b7eda1c5b..208ef817a 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:tuff_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_smooth.json b/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_smooth.json index cfc432408..14745b39b 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_smooth.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_smooth.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:tuff_smooth" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_smooth_brick.json b/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_smooth_brick.json index c8bb77dc5..ee58212c6 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_smooth_brick.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_smooth_brick.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:tuff_smooth_brick" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_smooth_brick_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_smooth_brick_furnace.json index 08ab15e3d..598013b97 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_smooth_brick_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_smooth_brick_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:tuff_smooth_brick_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_smooth_brick_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_smooth_brick_slab.json index 74a2ed6ad..300795312 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_smooth_brick_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_smooth_brick_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:tuff_smooth_brick_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_smooth_brick_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_smooth_brick_stairs.json index 0793826d1..6735b0b78 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_smooth_brick_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_smooth_brick_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:tuff_smooth_brick_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_smooth_brick_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_smooth_brick_wall.json index 91068590f..f0fe523c9 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_smooth_brick_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_smooth_brick_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:tuff_smooth_brick_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_smooth_furnace.json b/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_smooth_furnace.json index af40e24a1..e4ff371e0 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_smooth_furnace.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_smooth_furnace.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:tuff_smooth_furnace" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_smooth_slab.json b/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_smooth_slab.json index e55c0ca92..63e1006f0 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_smooth_slab.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_smooth_slab.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:tuff_smooth_slab" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_smooth_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_smooth_stairs.json index 0e3ba8b8f..96a03a317 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_smooth_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_smooth_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:tuff_smooth_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_smooth_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_smooth_wall.json index 5021a59e8..5c0c7e379 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_smooth_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_smooth_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:tuff_smooth_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_stairs.json b/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_stairs.json index 5821239f4..fc970a6dd 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_stairs.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_stairs.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:tuff_stairs" + } } ] } diff --git a/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_wall.json b/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_wall.json index 2e65ef38b..94fdc09f2 100644 --- a/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_wall.json +++ b/src/main/resources/data/mineralogy/loot_tables/blocks/tuff_wall.json @@ -14,7 +14,11 @@ { "condition": "minecraft:survives_explosion" } - ] + ], + "forge:condition": { + "type": "forge:item_exists", + "item": "mineralogy:tuff_wall" + } } ] } diff --git a/src/main/resources/data/mineralogy/tags/blocks/dripstone_base_stones.json b/src/main/resources/data/mineralogy/tags/blocks/dripstone_base_stones.json new file mode 100644 index 000000000..f604143b8 --- /dev/null +++ b/src/main/resources/data/mineralogy/tags/blocks/dripstone_base_stones.json @@ -0,0 +1,7 @@ +{ + "replace": false, + "values": [ + "#minecraft:base_stone_overworld", + "#mineralogy:terrain_rocks" + ] +} diff --git a/src/main/resources/data/mineralogy/tags/blocks/horn_breaking_rocks.json b/src/main/resources/data/mineralogy/tags/blocks/horn_breaking_rocks.json new file mode 100644 index 000000000..cf51bbbdb --- /dev/null +++ b/src/main/resources/data/mineralogy/tags/blocks/horn_breaking_rocks.json @@ -0,0 +1,35 @@ +{ + "replace": false, + "values": [ + "minecraft:andesite", + "minecraft:basalt", + "minecraft:diorite", + "minecraft:granite", + "minecraft:tuff", + "mineralogy:amphibolite", + "mineralogy:andesite", + "mineralogy:basalt", + "mineralogy:basaltic_glass", + "mineralogy:chert", + "mineralogy:conglomerate", + "mineralogy:diabase", + "mineralogy:diorite", + "mineralogy:dolomite", + "mineralogy:gabbro", + "mineralogy:gneiss", + "mineralogy:granite", + "mineralogy:hornfels", + "mineralogy:limestone", + "mineralogy:marble", + "mineralogy:novaculite", + "mineralogy:pegmatite", + "mineralogy:peridotite", + "mineralogy:phyllite", + "mineralogy:quartzite", + "mineralogy:rhyolite", + "mineralogy:schist", + "mineralogy:shale", + "mineralogy:slate", + "mineralogy:tuff" + ] +} diff --git a/src/main/resources/data/mineralogy/tags/blocks/raw_stones.json b/src/main/resources/data/mineralogy/tags/blocks/raw_stones.json new file mode 100644 index 000000000..ae9915dbf --- /dev/null +++ b/src/main/resources/data/mineralogy/tags/blocks/raw_stones.json @@ -0,0 +1,41 @@ +{ + "replace": false, + "values": [ + "minecraft:andesite", + "minecraft:basalt", + "minecraft:diorite", + "minecraft:granite", + "minecraft:tuff", + "mineralogy:amphibolite", + "mineralogy:andesite", + "mineralogy:basalt", + "mineralogy:basaltic_glass", + "mineralogy:chalk", + "mineralogy:chert", + "mineralogy:conglomerate", + "mineralogy:diabase", + "mineralogy:diorite", + "mineralogy:dolomite", + "mineralogy:gabbro", + "mineralogy:gneiss", + "mineralogy:granite", + "mineralogy:gypsum", + "mineralogy:hornfels", + "mineralogy:limestone", + "mineralogy:marble", + "mineralogy:novaculite", + "mineralogy:pegmatite", + "mineralogy:peridotite", + "mineralogy:phyllite", + "mineralogy:pumice", + "mineralogy:quartzite", + "mineralogy:rhyolite", + "mineralogy:rock_salt", + "mineralogy:schist", + "mineralogy:scoria", + "mineralogy:shale", + "mineralogy:siltstone", + "mineralogy:slate", + "mineralogy:tuff" + ] +} diff --git a/src/main/resources/data/mineralogy/tags/items/raw_stones.json b/src/main/resources/data/mineralogy/tags/items/raw_stones.json new file mode 100644 index 000000000..ae9915dbf --- /dev/null +++ b/src/main/resources/data/mineralogy/tags/items/raw_stones.json @@ -0,0 +1,41 @@ +{ + "replace": false, + "values": [ + "minecraft:andesite", + "minecraft:basalt", + "minecraft:diorite", + "minecraft:granite", + "minecraft:tuff", + "mineralogy:amphibolite", + "mineralogy:andesite", + "mineralogy:basalt", + "mineralogy:basaltic_glass", + "mineralogy:chalk", + "mineralogy:chert", + "mineralogy:conglomerate", + "mineralogy:diabase", + "mineralogy:diorite", + "mineralogy:dolomite", + "mineralogy:gabbro", + "mineralogy:gneiss", + "mineralogy:granite", + "mineralogy:gypsum", + "mineralogy:hornfels", + "mineralogy:limestone", + "mineralogy:marble", + "mineralogy:novaculite", + "mineralogy:pegmatite", + "mineralogy:peridotite", + "mineralogy:phyllite", + "mineralogy:pumice", + "mineralogy:quartzite", + "mineralogy:rhyolite", + "mineralogy:rock_salt", + "mineralogy:schist", + "mineralogy:scoria", + "mineralogy:shale", + "mineralogy:siltstone", + "mineralogy:slate", + "mineralogy:tuff" + ] +} diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/amphibolite.json b/src/main/resources/data/mineralogy/tags/items/slabs/amphibolite.json index cc4117a83..7ffb820e1 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/amphibolite.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/amphibolite.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:amphibolite_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:amphibolite_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/amphibolite/brick.json b/src/main/resources/data/mineralogy/tags/items/slabs/amphibolite/brick.json index 9db82ccae..689f179fb 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/amphibolite/brick.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/amphibolite/brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:amphibolite_brick_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:amphibolite_brick_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/amphibolite/smooth.json b/src/main/resources/data/mineralogy/tags/items/slabs/amphibolite/smooth.json index 5670a0a5f..8c1f80f1b 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/amphibolite/smooth.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/amphibolite/smooth.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:amphibolite_smooth_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:amphibolite_smooth_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/amphibolite/smooth_brick.json b/src/main/resources/data/mineralogy/tags/items/slabs/amphibolite/smooth_brick.json index fbbd50b2c..db8d7f144 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/amphibolite/smooth_brick.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/amphibolite/smooth_brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:amphibolite_smooth_brick_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:amphibolite_smooth_brick_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/andesite.json b/src/main/resources/data/mineralogy/tags/items/slabs/andesite.json index 2d0d6184e..748c01a94 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/andesite.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/andesite.json @@ -1,7 +1,10 @@ { - "replace": false, - "values": [ - "mineralogy:andesite_slab", - "minecraft:andesite_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:andesite_slab", + "required": false + }, + "minecraft:andesite_slab" + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/andesite/brick.json b/src/main/resources/data/mineralogy/tags/items/slabs/andesite/brick.json index 66931ac90..84ea5e894 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/andesite/brick.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/andesite/brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:andesite_brick_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:andesite_brick_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/andesite/smooth.json b/src/main/resources/data/mineralogy/tags/items/slabs/andesite/smooth.json index 6fe008cd9..3b3a0e5a8 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/andesite/smooth.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/andesite/smooth.json @@ -1,7 +1,10 @@ { - "replace": false, - "values": [ - "mineralogy:andesite_smooth_slab", - "minecraft:polished_andesite_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:andesite_smooth_slab", + "required": false + }, + "minecraft:polished_andesite_slab" + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/andesite/smooth_brick.json b/src/main/resources/data/mineralogy/tags/items/slabs/andesite/smooth_brick.json index 397fdafd5..33faeff55 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/andesite/smooth_brick.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/andesite/smooth_brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:andesite_smooth_brick_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:andesite_smooth_brick_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/basalt.json b/src/main/resources/data/mineralogy/tags/items/slabs/basalt.json index c86626703..49a6f272c 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/basalt.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/basalt.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:basalt_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:basalt_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/basalt/brick.json b/src/main/resources/data/mineralogy/tags/items/slabs/basalt/brick.json index b7c770d7c..71d118405 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/basalt/brick.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/basalt/brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:basalt_brick_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:basalt_brick_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/basalt/smooth.json b/src/main/resources/data/mineralogy/tags/items/slabs/basalt/smooth.json index a61e9fd5d..808d7c644 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/basalt/smooth.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/basalt/smooth.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:basalt_smooth_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:basalt_smooth_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/basalt/smooth_brick.json b/src/main/resources/data/mineralogy/tags/items/slabs/basalt/smooth_brick.json index d90666abc..1ea301a62 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/basalt/smooth_brick.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/basalt/smooth_brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:basalt_smooth_brick_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:basalt_smooth_brick_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/basaltic_glass.json b/src/main/resources/data/mineralogy/tags/items/slabs/basaltic_glass.json index 717c00479..ebcb3f252 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/basaltic_glass.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/basaltic_glass.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:basaltic_glass_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:basaltic_glass_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/basaltic_glass/brick.json b/src/main/resources/data/mineralogy/tags/items/slabs/basaltic_glass/brick.json index 5a3e112e8..40d556e08 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/basaltic_glass/brick.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/basaltic_glass/brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:basaltic_glass_brick_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:basaltic_glass_brick_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/basaltic_glass/smooth.json b/src/main/resources/data/mineralogy/tags/items/slabs/basaltic_glass/smooth.json index 1a0e8a748..feb0a6113 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/basaltic_glass/smooth.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/basaltic_glass/smooth.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:basaltic_glass_smooth_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:basaltic_glass_smooth_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/basaltic_glass/smooth_brick.json b/src/main/resources/data/mineralogy/tags/items/slabs/basaltic_glass/smooth_brick.json index 3ce475146..11f949be7 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/basaltic_glass/smooth_brick.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/basaltic_glass/smooth_brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:basaltic_glass_smooth_brick_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:basaltic_glass_smooth_brick_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/conglomerate.json b/src/main/resources/data/mineralogy/tags/items/slabs/conglomerate.json index d97b6a843..ca6d9fe8c 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/conglomerate.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/conglomerate.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:conglomerate_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:conglomerate_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/conglomerate/brick.json b/src/main/resources/data/mineralogy/tags/items/slabs/conglomerate/brick.json index 2970425bc..f81c33fa5 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/conglomerate/brick.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/conglomerate/brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:conglomerate_brick_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:conglomerate_brick_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/conglomerate/smooth.json b/src/main/resources/data/mineralogy/tags/items/slabs/conglomerate/smooth.json index d04c77375..ea152eb9f 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/conglomerate/smooth.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/conglomerate/smooth.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:conglomerate_smooth_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:conglomerate_smooth_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/conglomerate/smooth_brick.json b/src/main/resources/data/mineralogy/tags/items/slabs/conglomerate/smooth_brick.json index d28a89f07..fdda45139 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/conglomerate/smooth_brick.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/conglomerate/smooth_brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:conglomerate_smooth_brick_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:conglomerate_smooth_brick_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/diabase.json b/src/main/resources/data/mineralogy/tags/items/slabs/diabase.json index 665ed6689..3904d5862 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/diabase.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/diabase.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:diabase_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:diabase_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/diabase/brick.json b/src/main/resources/data/mineralogy/tags/items/slabs/diabase/brick.json index 1a8dc00dc..c8882d74b 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/diabase/brick.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/diabase/brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:diabase_brick_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:diabase_brick_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/diabase/smooth.json b/src/main/resources/data/mineralogy/tags/items/slabs/diabase/smooth.json index a511e4684..8731b4b8d 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/diabase/smooth.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/diabase/smooth.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:diabase_smooth_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:diabase_smooth_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/diabase/smooth_brick.json b/src/main/resources/data/mineralogy/tags/items/slabs/diabase/smooth_brick.json index 8e2151cfc..c61719751 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/diabase/smooth_brick.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/diabase/smooth_brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:diabase_smooth_brick_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:diabase_smooth_brick_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/diorite.json b/src/main/resources/data/mineralogy/tags/items/slabs/diorite.json index 67b558bee..566073fa4 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/diorite.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/diorite.json @@ -1,7 +1,10 @@ { - "replace": false, - "values": [ - "mineralogy:diorite_slab", - "minecraft:diorite_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:diorite_slab", + "required": false + }, + "minecraft:diorite_slab" + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/diorite/brick.json b/src/main/resources/data/mineralogy/tags/items/slabs/diorite/brick.json index 6bf529738..6cb5c2ec5 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/diorite/brick.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/diorite/brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:diorite_brick_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:diorite_brick_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/diorite/smooth.json b/src/main/resources/data/mineralogy/tags/items/slabs/diorite/smooth.json index 20eef8ccb..ed0df03a3 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/diorite/smooth.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/diorite/smooth.json @@ -1,7 +1,10 @@ { - "replace": false, - "values": [ - "mineralogy:diorite_smooth_slab", - "minecraft:polished_diorite_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:diorite_smooth_slab", + "required": false + }, + "minecraft:polished_diorite_slab" + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/diorite/smooth_brick.json b/src/main/resources/data/mineralogy/tags/items/slabs/diorite/smooth_brick.json index 7a98dd262..e0e18c42e 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/diorite/smooth_brick.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/diorite/smooth_brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:diorite_smooth_brick_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:diorite_smooth_brick_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/dolomite.json b/src/main/resources/data/mineralogy/tags/items/slabs/dolomite.json index 4d290eed2..8df395b5e 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/dolomite.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/dolomite.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:dolomite_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:dolomite_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/dolomite/brick.json b/src/main/resources/data/mineralogy/tags/items/slabs/dolomite/brick.json index 97227b908..d5b67a84f 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/dolomite/brick.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/dolomite/brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:dolomite_brick_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:dolomite_brick_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/dolomite/smooth.json b/src/main/resources/data/mineralogy/tags/items/slabs/dolomite/smooth.json index 1dc98f76e..fb58e8508 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/dolomite/smooth.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/dolomite/smooth.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:dolomite_smooth_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:dolomite_smooth_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/dolomite/smooth_brick.json b/src/main/resources/data/mineralogy/tags/items/slabs/dolomite/smooth_brick.json index 8dd4268b0..bf2bd171c 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/dolomite/smooth_brick.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/dolomite/smooth_brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:dolomite_smooth_brick_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:dolomite_smooth_brick_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/gabbro.json b/src/main/resources/data/mineralogy/tags/items/slabs/gabbro.json index e3576cff4..fa888cd7b 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/gabbro.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/gabbro.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:gabbro_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:gabbro_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/gabbro/brick.json b/src/main/resources/data/mineralogy/tags/items/slabs/gabbro/brick.json index 643872776..af51a1f51 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/gabbro/brick.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/gabbro/brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:gabbro_brick_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:gabbro_brick_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/gabbro/smooth.json b/src/main/resources/data/mineralogy/tags/items/slabs/gabbro/smooth.json index 20e323ef8..f1fd2fd58 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/gabbro/smooth.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/gabbro/smooth.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:gabbro_smooth_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:gabbro_smooth_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/gabbro/smooth_brick.json b/src/main/resources/data/mineralogy/tags/items/slabs/gabbro/smooth_brick.json index 4e328768c..38591c6c0 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/gabbro/smooth_brick.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/gabbro/smooth_brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:gabbro_smooth_brick_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:gabbro_smooth_brick_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/gneiss.json b/src/main/resources/data/mineralogy/tags/items/slabs/gneiss.json index 68512d817..d1224f5ca 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/gneiss.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/gneiss.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:gneiss_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:gneiss_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/gneiss/brick.json b/src/main/resources/data/mineralogy/tags/items/slabs/gneiss/brick.json index e962d4e9c..bd69fafba 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/gneiss/brick.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/gneiss/brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:gneiss_brick_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:gneiss_brick_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/gneiss/smooth.json b/src/main/resources/data/mineralogy/tags/items/slabs/gneiss/smooth.json index 7aa2f746d..38e002c63 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/gneiss/smooth.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/gneiss/smooth.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:gneiss_smooth_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:gneiss_smooth_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/gneiss/smooth_brick.json b/src/main/resources/data/mineralogy/tags/items/slabs/gneiss/smooth_brick.json index c6a513819..13c2b731d 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/gneiss/smooth_brick.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/gneiss/smooth_brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:gneiss_smooth_brick_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:gneiss_smooth_brick_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/granite.json b/src/main/resources/data/mineralogy/tags/items/slabs/granite.json index 892116b2c..811fdebf6 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/granite.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/granite.json @@ -1,7 +1,10 @@ { - "replace": false, - "values": [ - "mineralogy:granite_slab", - "minecraft:granite_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:granite_slab", + "required": false + }, + "minecraft:granite_slab" + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/granite/brick.json b/src/main/resources/data/mineralogy/tags/items/slabs/granite/brick.json index c7c412ec2..9349b2588 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/granite/brick.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/granite/brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:granite_brick_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:granite_brick_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/granite/smooth.json b/src/main/resources/data/mineralogy/tags/items/slabs/granite/smooth.json index 730511a99..17a2d6e20 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/granite/smooth.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/granite/smooth.json @@ -1,7 +1,10 @@ { - "replace": false, - "values": [ - "mineralogy:granite_smooth_slab", - "minecraft:polished_granite_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:granite_smooth_slab", + "required": false + }, + "minecraft:polished_granite_slab" + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/granite/smooth_brick.json b/src/main/resources/data/mineralogy/tags/items/slabs/granite/smooth_brick.json index e56697231..a101180c1 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/granite/smooth_brick.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/granite/smooth_brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:granite_smooth_brick_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:granite_smooth_brick_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/hornfels.json b/src/main/resources/data/mineralogy/tags/items/slabs/hornfels.json index 408d05b3c..50bf72e2e 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/hornfels.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/hornfels.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:hornfels_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:hornfels_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/hornfels/brick.json b/src/main/resources/data/mineralogy/tags/items/slabs/hornfels/brick.json index 4297940a7..19359c452 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/hornfels/brick.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/hornfels/brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:hornfels_brick_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:hornfels_brick_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/hornfels/smooth.json b/src/main/resources/data/mineralogy/tags/items/slabs/hornfels/smooth.json index 97f5d04e1..cfbc1abb6 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/hornfels/smooth.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/hornfels/smooth.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:hornfels_smooth_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:hornfels_smooth_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/hornfels/smooth_brick.json b/src/main/resources/data/mineralogy/tags/items/slabs/hornfels/smooth_brick.json index b1ce7f4db..cc102546c 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/hornfels/smooth_brick.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/hornfels/smooth_brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:hornfels_smooth_brick_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:hornfels_smooth_brick_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/limestone.json b/src/main/resources/data/mineralogy/tags/items/slabs/limestone.json index e5f7333c1..b946d757b 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/limestone.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/limestone.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:limestone_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:limestone_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/limestone/brick.json b/src/main/resources/data/mineralogy/tags/items/slabs/limestone/brick.json index ef5bdae0d..a9d1f64d0 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/limestone/brick.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/limestone/brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:limestone_brick_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:limestone_brick_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/limestone/smooth.json b/src/main/resources/data/mineralogy/tags/items/slabs/limestone/smooth.json index f5701a999..1155dd809 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/limestone/smooth.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/limestone/smooth.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:limestone_smooth_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:limestone_smooth_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/limestone/smooth_brick.json b/src/main/resources/data/mineralogy/tags/items/slabs/limestone/smooth_brick.json index 113f36066..7b0f7cdd4 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/limestone/smooth_brick.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/limestone/smooth_brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:limestone_smooth_brick_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:limestone_smooth_brick_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/marble.json b/src/main/resources/data/mineralogy/tags/items/slabs/marble.json index ebda57b3d..2d63bb03a 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/marble.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/marble.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:marble_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:marble_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/marble/brick.json b/src/main/resources/data/mineralogy/tags/items/slabs/marble/brick.json index 3b9fba246..fc9891b04 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/marble/brick.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/marble/brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:marble_brick_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:marble_brick_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/marble/smooth.json b/src/main/resources/data/mineralogy/tags/items/slabs/marble/smooth.json index 876baf7d3..8630a9a8c 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/marble/smooth.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/marble/smooth.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:marble_smooth_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:marble_smooth_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/marble/smooth_brick.json b/src/main/resources/data/mineralogy/tags/items/slabs/marble/smooth_brick.json index cc716132c..63cbbb618 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/marble/smooth_brick.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/marble/smooth_brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:marble_smooth_brick_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:marble_smooth_brick_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/novaculite.json b/src/main/resources/data/mineralogy/tags/items/slabs/novaculite.json index 2d75804c5..241da27a5 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/novaculite.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/novaculite.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:novaculite_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:novaculite_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/novaculite/brick.json b/src/main/resources/data/mineralogy/tags/items/slabs/novaculite/brick.json index 1fa49bab1..a618b8723 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/novaculite/brick.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/novaculite/brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:novaculite_brick_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:novaculite_brick_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/novaculite/smooth.json b/src/main/resources/data/mineralogy/tags/items/slabs/novaculite/smooth.json index 842a79951..884259c7c 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/novaculite/smooth.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/novaculite/smooth.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:novaculite_smooth_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:novaculite_smooth_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/novaculite/smooth_brick.json b/src/main/resources/data/mineralogy/tags/items/slabs/novaculite/smooth_brick.json index 975702399..434ce35ea 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/novaculite/smooth_brick.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/novaculite/smooth_brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:novaculite_smooth_brick_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:novaculite_smooth_brick_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/pegmatite.json b/src/main/resources/data/mineralogy/tags/items/slabs/pegmatite.json index 85d7de59c..c2df7d16c 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/pegmatite.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/pegmatite.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:pegmatite_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:pegmatite_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/pegmatite/brick.json b/src/main/resources/data/mineralogy/tags/items/slabs/pegmatite/brick.json index a9e624210..11724c531 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/pegmatite/brick.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/pegmatite/brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:pegmatite_brick_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:pegmatite_brick_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/pegmatite/smooth.json b/src/main/resources/data/mineralogy/tags/items/slabs/pegmatite/smooth.json index 66f6500ec..9148ecead 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/pegmatite/smooth.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/pegmatite/smooth.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:pegmatite_smooth_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:pegmatite_smooth_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/pegmatite/smooth_brick.json b/src/main/resources/data/mineralogy/tags/items/slabs/pegmatite/smooth_brick.json index 8ccfcb2a6..6c90d62a8 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/pegmatite/smooth_brick.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/pegmatite/smooth_brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:pegmatite_smooth_brick_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:pegmatite_smooth_brick_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/peridotite.json b/src/main/resources/data/mineralogy/tags/items/slabs/peridotite.json index 15551daab..06e2abe82 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/peridotite.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/peridotite.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:peridotite_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:peridotite_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/peridotite/brick.json b/src/main/resources/data/mineralogy/tags/items/slabs/peridotite/brick.json index e31a75bdf..a42ca4c76 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/peridotite/brick.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/peridotite/brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:peridotite_brick_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:peridotite_brick_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/peridotite/smooth.json b/src/main/resources/data/mineralogy/tags/items/slabs/peridotite/smooth.json index 18572c5d3..308ad2b23 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/peridotite/smooth.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/peridotite/smooth.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:peridotite_smooth_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:peridotite_smooth_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/peridotite/smooth_brick.json b/src/main/resources/data/mineralogy/tags/items/slabs/peridotite/smooth_brick.json index 651d50fe3..e7b1caf35 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/peridotite/smooth_brick.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/peridotite/smooth_brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:peridotite_smooth_brick_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:peridotite_smooth_brick_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/phyllite.json b/src/main/resources/data/mineralogy/tags/items/slabs/phyllite.json index f727b589a..ba970480c 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/phyllite.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/phyllite.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:phyllite_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:phyllite_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/phyllite/brick.json b/src/main/resources/data/mineralogy/tags/items/slabs/phyllite/brick.json index d470beba6..a3895e35b 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/phyllite/brick.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/phyllite/brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:phyllite_brick_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:phyllite_brick_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/phyllite/smooth.json b/src/main/resources/data/mineralogy/tags/items/slabs/phyllite/smooth.json index a43bb7783..c02b76da5 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/phyllite/smooth.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/phyllite/smooth.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:phyllite_smooth_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:phyllite_smooth_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/phyllite/smooth_brick.json b/src/main/resources/data/mineralogy/tags/items/slabs/phyllite/smooth_brick.json index bf5f49a29..c387f59c1 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/phyllite/smooth_brick.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/phyllite/smooth_brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:phyllite_smooth_brick_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:phyllite_smooth_brick_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/quartzite.json b/src/main/resources/data/mineralogy/tags/items/slabs/quartzite.json index 3595ab596..94ac00e6e 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/quartzite.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/quartzite.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:quartzite_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:quartzite_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/quartzite/brick.json b/src/main/resources/data/mineralogy/tags/items/slabs/quartzite/brick.json index f58f9f563..9d23e1c4c 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/quartzite/brick.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/quartzite/brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:quartzite_brick_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:quartzite_brick_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/quartzite/smooth.json b/src/main/resources/data/mineralogy/tags/items/slabs/quartzite/smooth.json index 1dd4e97fe..84b1573f4 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/quartzite/smooth.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/quartzite/smooth.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:quartzite_smooth_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:quartzite_smooth_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/quartzite/smooth_brick.json b/src/main/resources/data/mineralogy/tags/items/slabs/quartzite/smooth_brick.json index 9a998c5dc..9d370a224 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/quartzite/smooth_brick.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/quartzite/smooth_brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:quartzite_smooth_brick_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:quartzite_smooth_brick_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/rhyolite.json b/src/main/resources/data/mineralogy/tags/items/slabs/rhyolite.json index c185ea5e4..2c647e88f 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/rhyolite.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/rhyolite.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:rhyolite_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:rhyolite_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/rhyolite/brick.json b/src/main/resources/data/mineralogy/tags/items/slabs/rhyolite/brick.json index dd1efa5d1..1355c93c9 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/rhyolite/brick.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/rhyolite/brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:rhyolite_brick_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:rhyolite_brick_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/rhyolite/smooth.json b/src/main/resources/data/mineralogy/tags/items/slabs/rhyolite/smooth.json index d41b64b15..171c7237d 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/rhyolite/smooth.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/rhyolite/smooth.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:rhyolite_smooth_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:rhyolite_smooth_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/rhyolite/smooth_brick.json b/src/main/resources/data/mineralogy/tags/items/slabs/rhyolite/smooth_brick.json index a4932de04..2fce47f8c 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/rhyolite/smooth_brick.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/rhyolite/smooth_brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:rhyolite_smooth_brick_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:rhyolite_smooth_brick_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/rock_salt.json b/src/main/resources/data/mineralogy/tags/items/slabs/rock_salt.json index e76862b94..0474f695a 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/rock_salt.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/rock_salt.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:rock_salt_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:rock_salt_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/rock_salt/brick.json b/src/main/resources/data/mineralogy/tags/items/slabs/rock_salt/brick.json index cd5329250..29de09a88 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/rock_salt/brick.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/rock_salt/brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:rock_salt_brick_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:rock_salt_brick_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/rock_salt/smooth.json b/src/main/resources/data/mineralogy/tags/items/slabs/rock_salt/smooth.json index 85a609347..389e7e96e 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/rock_salt/smooth.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/rock_salt/smooth.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:rock_salt_smooth_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:rock_salt_smooth_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/rock_salt/smooth_brick.json b/src/main/resources/data/mineralogy/tags/items/slabs/rock_salt/smooth_brick.json index 9864136eb..3da8e6399 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/rock_salt/smooth_brick.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/rock_salt/smooth_brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:rock_salt_smooth_brick_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:rock_salt_smooth_brick_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/schist.json b/src/main/resources/data/mineralogy/tags/items/slabs/schist.json index a1ce71a3a..b2360361a 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/schist.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/schist.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:schist_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:schist_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/schist/brick.json b/src/main/resources/data/mineralogy/tags/items/slabs/schist/brick.json index e1306e381..30e3ec0d5 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/schist/brick.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/schist/brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:schist_brick_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:schist_brick_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/schist/smooth.json b/src/main/resources/data/mineralogy/tags/items/slabs/schist/smooth.json index 93401df40..8ad226827 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/schist/smooth.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/schist/smooth.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:schist_smooth_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:schist_smooth_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/schist/smooth_brick.json b/src/main/resources/data/mineralogy/tags/items/slabs/schist/smooth_brick.json index c0658afea..6504b2b64 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/schist/smooth_brick.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/schist/smooth_brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:schist_smooth_brick_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:schist_smooth_brick_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/scoria.json b/src/main/resources/data/mineralogy/tags/items/slabs/scoria.json index b58eade46..171c486a7 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/scoria.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/scoria.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:scoria_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:scoria_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/scoria/brick.json b/src/main/resources/data/mineralogy/tags/items/slabs/scoria/brick.json index 9ca979dc7..be9cf8f38 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/scoria/brick.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/scoria/brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:scoria_brick_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:scoria_brick_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/scoria/smooth.json b/src/main/resources/data/mineralogy/tags/items/slabs/scoria/smooth.json index fbcce69b9..9bee06907 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/scoria/smooth.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/scoria/smooth.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:scoria_smooth_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:scoria_smooth_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/scoria/smooth_brick.json b/src/main/resources/data/mineralogy/tags/items/slabs/scoria/smooth_brick.json index a53e4803e..94633f9e7 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/scoria/smooth_brick.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/scoria/smooth_brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:scoria_smooth_brick_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:scoria_smooth_brick_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/shale.json b/src/main/resources/data/mineralogy/tags/items/slabs/shale.json index b55c232a4..e0fe801b2 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/shale.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/shale.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:shale_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:shale_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/shale/brick.json b/src/main/resources/data/mineralogy/tags/items/slabs/shale/brick.json index 1981c8a99..04d154c48 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/shale/brick.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/shale/brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:shale_brick_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:shale_brick_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/shale/smooth.json b/src/main/resources/data/mineralogy/tags/items/slabs/shale/smooth.json index 662067502..5ca9e612a 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/shale/smooth.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/shale/smooth.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:shale_smooth_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:shale_smooth_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/shale/smooth_brick.json b/src/main/resources/data/mineralogy/tags/items/slabs/shale/smooth_brick.json index 77666c63d..114870497 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/shale/smooth_brick.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/shale/smooth_brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:shale_smooth_brick_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:shale_smooth_brick_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/siltstone.json b/src/main/resources/data/mineralogy/tags/items/slabs/siltstone.json index dc95b1428..496723a17 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/siltstone.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/siltstone.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:siltstone_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:siltstone_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/siltstone/brick.json b/src/main/resources/data/mineralogy/tags/items/slabs/siltstone/brick.json index d461205e9..51b0864c5 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/siltstone/brick.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/siltstone/brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:siltstone_brick_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:siltstone_brick_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/siltstone/smooth.json b/src/main/resources/data/mineralogy/tags/items/slabs/siltstone/smooth.json index 0aeafc131..1cddf045a 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/siltstone/smooth.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/siltstone/smooth.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:siltstone_smooth_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:siltstone_smooth_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/siltstone/smooth_brick.json b/src/main/resources/data/mineralogy/tags/items/slabs/siltstone/smooth_brick.json index c90b6e834..24823fffc 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/siltstone/smooth_brick.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/siltstone/smooth_brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:siltstone_smooth_brick_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:siltstone_smooth_brick_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/slate.json b/src/main/resources/data/mineralogy/tags/items/slabs/slate.json index 6c4f3d89b..18eb618e3 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/slate.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/slate.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:slate_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:slate_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/slate/brick.json b/src/main/resources/data/mineralogy/tags/items/slabs/slate/brick.json index 4aabe2c82..fa5eb32a4 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/slate/brick.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/slate/brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:slate_brick_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:slate_brick_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/slate/smooth.json b/src/main/resources/data/mineralogy/tags/items/slabs/slate/smooth.json index 4e198eb90..cc2bfdcba 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/slate/smooth.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/slate/smooth.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:slate_smooth_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:slate_smooth_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/slate/smooth_brick.json b/src/main/resources/data/mineralogy/tags/items/slabs/slate/smooth_brick.json index 77e8f5b2c..1fff914a8 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/slate/smooth_brick.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/slate/smooth_brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:slate_smooth_brick_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:slate_smooth_brick_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/tuff.json b/src/main/resources/data/mineralogy/tags/items/slabs/tuff.json index 55fbe278b..6d8d357af 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/tuff.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/tuff.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:tuff_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:tuff_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/tuff/brick.json b/src/main/resources/data/mineralogy/tags/items/slabs/tuff/brick.json index 079ddf207..bffbb5212 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/tuff/brick.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/tuff/brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:tuff_brick_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:tuff_brick_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/tuff/smooth.json b/src/main/resources/data/mineralogy/tags/items/slabs/tuff/smooth.json index 5be1ce879..de96b58a4 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/tuff/smooth.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/tuff/smooth.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:tuff_smooth_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:tuff_smooth_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/slabs/tuff/smooth_brick.json b/src/main/resources/data/mineralogy/tags/items/slabs/tuff/smooth_brick.json index 6c6dd368b..3f815ed0c 100644 --- a/src/main/resources/data/mineralogy/tags/items/slabs/tuff/smooth_brick.json +++ b/src/main/resources/data/mineralogy/tags/items/slabs/tuff/smooth_brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:tuff_smooth_brick_slab" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:tuff_smooth_brick_slab", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/amphibolite/brick.json b/src/main/resources/data/mineralogy/tags/items/stones/amphibolite/brick.json index 1651716ad..a858f66c0 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/amphibolite/brick.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/amphibolite/brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:amphibolite_brick" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:amphibolite_brick", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/amphibolite/smooth.json b/src/main/resources/data/mineralogy/tags/items/stones/amphibolite/smooth.json index a891ba7f8..9efe3185e 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/amphibolite/smooth.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/amphibolite/smooth.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:amphibolite_smooth" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:amphibolite_smooth", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/amphibolite/smooth_brick.json b/src/main/resources/data/mineralogy/tags/items/stones/amphibolite/smooth_brick.json index 48eb807c9..41035d37a 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/amphibolite/smooth_brick.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/amphibolite/smooth_brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:amphibolite_smooth_brick" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:amphibolite_smooth_brick", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/andesite/brick.json b/src/main/resources/data/mineralogy/tags/items/stones/andesite/brick.json index 65dd79abf..a58b69b22 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/andesite/brick.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/andesite/brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:andesite_brick" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:andesite_brick", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/andesite/smooth.json b/src/main/resources/data/mineralogy/tags/items/stones/andesite/smooth.json index a69cca9fa..174e98834 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/andesite/smooth.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/andesite/smooth.json @@ -1,7 +1,10 @@ { - "replace": false, - "values": [ - "mineralogy:andesite_smooth", - "minecraft:polished_andesite" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:andesite_smooth", + "required": false + }, + "minecraft:polished_andesite" + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/andesite/smooth_brick.json b/src/main/resources/data/mineralogy/tags/items/stones/andesite/smooth_brick.json index 77fa030cc..4ce9bc98e 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/andesite/smooth_brick.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/andesite/smooth_brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:andesite_smooth_brick" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:andesite_smooth_brick", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/basalt/brick.json b/src/main/resources/data/mineralogy/tags/items/stones/basalt/brick.json index 49e671bdb..927d44b8f 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/basalt/brick.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/basalt/brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:basalt_brick" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:basalt_brick", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/basalt/smooth.json b/src/main/resources/data/mineralogy/tags/items/stones/basalt/smooth.json index 4a744d51b..856542a82 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/basalt/smooth.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/basalt/smooth.json @@ -1,8 +1,11 @@ { - "replace": false, - "values": [ - "mineralogy:basalt_smooth", - "minecraft:polished_basalt", - "minecraft:smooth_basalt" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:basalt_smooth", + "required": false + }, + "minecraft:polished_basalt", + "minecraft:smooth_basalt" + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/basalt/smooth_brick.json b/src/main/resources/data/mineralogy/tags/items/stones/basalt/smooth_brick.json index 3118bb8c9..586603648 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/basalt/smooth_brick.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/basalt/smooth_brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:basalt_smooth_brick" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:basalt_smooth_brick", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/basaltic_glass/brick.json b/src/main/resources/data/mineralogy/tags/items/stones/basaltic_glass/brick.json index ca6b5c874..b45dcafd8 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/basaltic_glass/brick.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/basaltic_glass/brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:basaltic_glass_brick" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:basaltic_glass_brick", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/basaltic_glass/smooth.json b/src/main/resources/data/mineralogy/tags/items/stones/basaltic_glass/smooth.json index c26bf62e0..a9980b9fe 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/basaltic_glass/smooth.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/basaltic_glass/smooth.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:basaltic_glass_smooth" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:basaltic_glass_smooth", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/basaltic_glass/smooth_brick.json b/src/main/resources/data/mineralogy/tags/items/stones/basaltic_glass/smooth_brick.json index 687a62cb9..8f0c7e532 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/basaltic_glass/smooth_brick.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/basaltic_glass/smooth_brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:basaltic_glass_smooth_brick" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:basaltic_glass_smooth_brick", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/conglomerate/brick.json b/src/main/resources/data/mineralogy/tags/items/stones/conglomerate/brick.json index dbb375208..6d76410e7 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/conglomerate/brick.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/conglomerate/brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:conglomerate_brick" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:conglomerate_brick", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/conglomerate/smooth.json b/src/main/resources/data/mineralogy/tags/items/stones/conglomerate/smooth.json index e9b9b7d51..d67967faa 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/conglomerate/smooth.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/conglomerate/smooth.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:conglomerate_smooth" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:conglomerate_smooth", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/conglomerate/smooth_brick.json b/src/main/resources/data/mineralogy/tags/items/stones/conglomerate/smooth_brick.json index 0c58445bb..aecd81f8f 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/conglomerate/smooth_brick.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/conglomerate/smooth_brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:conglomerate_smooth_brick" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:conglomerate_smooth_brick", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/diabase/brick.json b/src/main/resources/data/mineralogy/tags/items/stones/diabase/brick.json index dfd293283..0b63808c3 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/diabase/brick.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/diabase/brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:diabase_brick" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:diabase_brick", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/diabase/smooth.json b/src/main/resources/data/mineralogy/tags/items/stones/diabase/smooth.json index 3931e59c9..600ee132c 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/diabase/smooth.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/diabase/smooth.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:diabase_smooth" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:diabase_smooth", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/diabase/smooth_brick.json b/src/main/resources/data/mineralogy/tags/items/stones/diabase/smooth_brick.json index c4039acd1..5cb5d4310 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/diabase/smooth_brick.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/diabase/smooth_brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:diabase_smooth_brick" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:diabase_smooth_brick", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/diorite/brick.json b/src/main/resources/data/mineralogy/tags/items/stones/diorite/brick.json index 44f75de23..6e93a8291 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/diorite/brick.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/diorite/brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:diorite_brick" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:diorite_brick", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/diorite/smooth.json b/src/main/resources/data/mineralogy/tags/items/stones/diorite/smooth.json index 28fc952bd..8bc143315 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/diorite/smooth.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/diorite/smooth.json @@ -1,7 +1,10 @@ { - "replace": false, - "values": [ - "mineralogy:diorite_smooth", - "minecraft:polished_diorite" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:diorite_smooth", + "required": false + }, + "minecraft:polished_diorite" + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/diorite/smooth_brick.json b/src/main/resources/data/mineralogy/tags/items/stones/diorite/smooth_brick.json index 9d2661c01..519b4acf2 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/diorite/smooth_brick.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/diorite/smooth_brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:diorite_smooth_brick" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:diorite_smooth_brick", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/dolomite/brick.json b/src/main/resources/data/mineralogy/tags/items/stones/dolomite/brick.json index c010f8c2e..75279eddc 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/dolomite/brick.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/dolomite/brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:dolomite_brick" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:dolomite_brick", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/dolomite/smooth.json b/src/main/resources/data/mineralogy/tags/items/stones/dolomite/smooth.json index d1e984d14..f757d26e6 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/dolomite/smooth.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/dolomite/smooth.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:dolomite_smooth" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:dolomite_smooth", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/dolomite/smooth_brick.json b/src/main/resources/data/mineralogy/tags/items/stones/dolomite/smooth_brick.json index 2f74306bc..b4e287bf5 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/dolomite/smooth_brick.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/dolomite/smooth_brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:dolomite_smooth_brick" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:dolomite_smooth_brick", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/gabbro/brick.json b/src/main/resources/data/mineralogy/tags/items/stones/gabbro/brick.json index 1a4f230f9..eaf915928 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/gabbro/brick.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/gabbro/brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:gabbro_brick" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:gabbro_brick", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/gabbro/smooth.json b/src/main/resources/data/mineralogy/tags/items/stones/gabbro/smooth.json index ce9b70813..7713ca1b9 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/gabbro/smooth.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/gabbro/smooth.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:gabbro_smooth" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:gabbro_smooth", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/gabbro/smooth_brick.json b/src/main/resources/data/mineralogy/tags/items/stones/gabbro/smooth_brick.json index 53dea2b13..175ea4912 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/gabbro/smooth_brick.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/gabbro/smooth_brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:gabbro_smooth_brick" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:gabbro_smooth_brick", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/gneiss/brick.json b/src/main/resources/data/mineralogy/tags/items/stones/gneiss/brick.json index 6a784a9fb..26315dbbc 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/gneiss/brick.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/gneiss/brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:gneiss_brick" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:gneiss_brick", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/gneiss/smooth.json b/src/main/resources/data/mineralogy/tags/items/stones/gneiss/smooth.json index 211fd8983..0f5e83664 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/gneiss/smooth.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/gneiss/smooth.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:gneiss_smooth" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:gneiss_smooth", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/gneiss/smooth_brick.json b/src/main/resources/data/mineralogy/tags/items/stones/gneiss/smooth_brick.json index 5ab5d0aaa..436aae0c2 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/gneiss/smooth_brick.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/gneiss/smooth_brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:gneiss_smooth_brick" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:gneiss_smooth_brick", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/granite/brick.json b/src/main/resources/data/mineralogy/tags/items/stones/granite/brick.json index b4f65a8a6..7191dc48e 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/granite/brick.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/granite/brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:granite_brick" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:granite_brick", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/granite/smooth.json b/src/main/resources/data/mineralogy/tags/items/stones/granite/smooth.json index 947518d8b..8cdb1af63 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/granite/smooth.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/granite/smooth.json @@ -1,7 +1,10 @@ { - "replace": false, - "values": [ - "mineralogy:granite_smooth", - "minecraft:polished_granite" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:granite_smooth", + "required": false + }, + "minecraft:polished_granite" + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/granite/smooth_brick.json b/src/main/resources/data/mineralogy/tags/items/stones/granite/smooth_brick.json index a68aa55e3..d8c34beca 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/granite/smooth_brick.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/granite/smooth_brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:granite_smooth_brick" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:granite_smooth_brick", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/hornfels/brick.json b/src/main/resources/data/mineralogy/tags/items/stones/hornfels/brick.json index fa6cbf595..eb8228848 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/hornfels/brick.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/hornfels/brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:hornfels_brick" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:hornfels_brick", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/hornfels/smooth.json b/src/main/resources/data/mineralogy/tags/items/stones/hornfels/smooth.json index 9f6801294..eb0981bcb 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/hornfels/smooth.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/hornfels/smooth.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:hornfels_smooth" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:hornfels_smooth", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/hornfels/smooth_brick.json b/src/main/resources/data/mineralogy/tags/items/stones/hornfels/smooth_brick.json index 9da4b03c2..70751f794 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/hornfels/smooth_brick.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/hornfels/smooth_brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:hornfels_smooth_brick" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:hornfels_smooth_brick", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/limestone/brick.json b/src/main/resources/data/mineralogy/tags/items/stones/limestone/brick.json index f49563caf..b7064f665 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/limestone/brick.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/limestone/brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:limestone_brick" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:limestone_brick", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/limestone/smooth.json b/src/main/resources/data/mineralogy/tags/items/stones/limestone/smooth.json index d45ba82ba..522755fe0 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/limestone/smooth.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/limestone/smooth.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:limestone_smooth" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:limestone_smooth", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/limestone/smooth_brick.json b/src/main/resources/data/mineralogy/tags/items/stones/limestone/smooth_brick.json index 4e7f4269e..d9134d7ea 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/limestone/smooth_brick.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/limestone/smooth_brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:limestone_smooth_brick" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:limestone_smooth_brick", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/marble/brick.json b/src/main/resources/data/mineralogy/tags/items/stones/marble/brick.json index 7359596ec..5920f64ff 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/marble/brick.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/marble/brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:marble_brick" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:marble_brick", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/marble/smooth.json b/src/main/resources/data/mineralogy/tags/items/stones/marble/smooth.json index 4ec76fe47..11bf23701 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/marble/smooth.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/marble/smooth.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:marble_smooth" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:marble_smooth", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/marble/smooth_brick.json b/src/main/resources/data/mineralogy/tags/items/stones/marble/smooth_brick.json index ed9758ea4..93c772223 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/marble/smooth_brick.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/marble/smooth_brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:marble_smooth_brick" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:marble_smooth_brick", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/novaculite/brick.json b/src/main/resources/data/mineralogy/tags/items/stones/novaculite/brick.json index 5572d90dd..995289f86 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/novaculite/brick.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/novaculite/brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:novaculite_brick" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:novaculite_brick", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/novaculite/smooth.json b/src/main/resources/data/mineralogy/tags/items/stones/novaculite/smooth.json index 99993cecc..828531fca 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/novaculite/smooth.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/novaculite/smooth.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:novaculite_smooth" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:novaculite_smooth", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/novaculite/smooth_brick.json b/src/main/resources/data/mineralogy/tags/items/stones/novaculite/smooth_brick.json index b393df328..aa79c5620 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/novaculite/smooth_brick.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/novaculite/smooth_brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:novaculite_smooth_brick" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:novaculite_smooth_brick", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/pegmatite/brick.json b/src/main/resources/data/mineralogy/tags/items/stones/pegmatite/brick.json index 79089e743..863fef237 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/pegmatite/brick.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/pegmatite/brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:pegmatite_brick" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:pegmatite_brick", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/pegmatite/smooth.json b/src/main/resources/data/mineralogy/tags/items/stones/pegmatite/smooth.json index f0cd06b16..1916dfda1 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/pegmatite/smooth.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/pegmatite/smooth.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:pegmatite_smooth" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:pegmatite_smooth", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/pegmatite/smooth_brick.json b/src/main/resources/data/mineralogy/tags/items/stones/pegmatite/smooth_brick.json index c947fbd24..89243ff74 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/pegmatite/smooth_brick.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/pegmatite/smooth_brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:pegmatite_smooth_brick" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:pegmatite_smooth_brick", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/peridotite/brick.json b/src/main/resources/data/mineralogy/tags/items/stones/peridotite/brick.json index d5164e79e..2b8e60ed1 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/peridotite/brick.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/peridotite/brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:peridotite_brick" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:peridotite_brick", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/peridotite/smooth.json b/src/main/resources/data/mineralogy/tags/items/stones/peridotite/smooth.json index 05cc3984e..632e06c61 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/peridotite/smooth.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/peridotite/smooth.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:peridotite_smooth" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:peridotite_smooth", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/peridotite/smooth_brick.json b/src/main/resources/data/mineralogy/tags/items/stones/peridotite/smooth_brick.json index f4aea4223..5273b5e32 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/peridotite/smooth_brick.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/peridotite/smooth_brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:peridotite_smooth_brick" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:peridotite_smooth_brick", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/phyllite/brick.json b/src/main/resources/data/mineralogy/tags/items/stones/phyllite/brick.json index 9e33f47aa..3c8584d51 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/phyllite/brick.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/phyllite/brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:phyllite_brick" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:phyllite_brick", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/phyllite/smooth.json b/src/main/resources/data/mineralogy/tags/items/stones/phyllite/smooth.json index 6c74aea08..f55e8021e 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/phyllite/smooth.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/phyllite/smooth.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:phyllite_smooth" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:phyllite_smooth", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/phyllite/smooth_brick.json b/src/main/resources/data/mineralogy/tags/items/stones/phyllite/smooth_brick.json index d381910bc..ccd319077 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/phyllite/smooth_brick.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/phyllite/smooth_brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:phyllite_smooth_brick" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:phyllite_smooth_brick", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/quartzite/brick.json b/src/main/resources/data/mineralogy/tags/items/stones/quartzite/brick.json index ae21a9047..fae99b366 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/quartzite/brick.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/quartzite/brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:quartzite_brick" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:quartzite_brick", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/quartzite/smooth.json b/src/main/resources/data/mineralogy/tags/items/stones/quartzite/smooth.json index f29a3ef24..bc4eb73cc 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/quartzite/smooth.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/quartzite/smooth.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:quartzite_smooth" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:quartzite_smooth", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/quartzite/smooth_brick.json b/src/main/resources/data/mineralogy/tags/items/stones/quartzite/smooth_brick.json index 73b47a97a..229aa3f97 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/quartzite/smooth_brick.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/quartzite/smooth_brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:quartzite_smooth_brick" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:quartzite_smooth_brick", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/rhyolite/brick.json b/src/main/resources/data/mineralogy/tags/items/stones/rhyolite/brick.json index 324c3af21..2b50540c3 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/rhyolite/brick.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/rhyolite/brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:rhyolite_brick" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:rhyolite_brick", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/rhyolite/smooth.json b/src/main/resources/data/mineralogy/tags/items/stones/rhyolite/smooth.json index 37b2943cc..f0055be55 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/rhyolite/smooth.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/rhyolite/smooth.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:rhyolite_smooth" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:rhyolite_smooth", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/rhyolite/smooth_brick.json b/src/main/resources/data/mineralogy/tags/items/stones/rhyolite/smooth_brick.json index 3fb64d82b..74c96dbad 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/rhyolite/smooth_brick.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/rhyolite/smooth_brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:rhyolite_smooth_brick" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:rhyolite_smooth_brick", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/rock_salt/brick.json b/src/main/resources/data/mineralogy/tags/items/stones/rock_salt/brick.json index a66102e22..b9a8c61b6 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/rock_salt/brick.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/rock_salt/brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:rock_salt_brick" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:rock_salt_brick", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/rock_salt/smooth.json b/src/main/resources/data/mineralogy/tags/items/stones/rock_salt/smooth.json index cb1591d29..089b005ff 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/rock_salt/smooth.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/rock_salt/smooth.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:rock_salt_smooth" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:rock_salt_smooth", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/rock_salt/smooth_brick.json b/src/main/resources/data/mineralogy/tags/items/stones/rock_salt/smooth_brick.json index b63b027b0..7cbd68a29 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/rock_salt/smooth_brick.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/rock_salt/smooth_brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:rock_salt_smooth_brick" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:rock_salt_smooth_brick", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/schist/brick.json b/src/main/resources/data/mineralogy/tags/items/stones/schist/brick.json index 9e7adbfbf..7a1f76230 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/schist/brick.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/schist/brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:schist_brick" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:schist_brick", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/schist/smooth.json b/src/main/resources/data/mineralogy/tags/items/stones/schist/smooth.json index 35372ad18..0e164909a 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/schist/smooth.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/schist/smooth.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:schist_smooth" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:schist_smooth", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/schist/smooth_brick.json b/src/main/resources/data/mineralogy/tags/items/stones/schist/smooth_brick.json index b1eaa31df..0037532d6 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/schist/smooth_brick.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/schist/smooth_brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:schist_smooth_brick" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:schist_smooth_brick", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/scoria/brick.json b/src/main/resources/data/mineralogy/tags/items/stones/scoria/brick.json index d752ece67..2ba07aea2 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/scoria/brick.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/scoria/brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:scoria_brick" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:scoria_brick", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/scoria/smooth.json b/src/main/resources/data/mineralogy/tags/items/stones/scoria/smooth.json index 72faf39b1..0ffd6a4d4 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/scoria/smooth.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/scoria/smooth.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:scoria_smooth" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:scoria_smooth", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/scoria/smooth_brick.json b/src/main/resources/data/mineralogy/tags/items/stones/scoria/smooth_brick.json index 3d375e806..8dbf07f01 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/scoria/smooth_brick.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/scoria/smooth_brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:scoria_smooth_brick" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:scoria_smooth_brick", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/shale/brick.json b/src/main/resources/data/mineralogy/tags/items/stones/shale/brick.json index 645bac6d1..d07c059a7 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/shale/brick.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/shale/brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:shale_brick" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:shale_brick", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/shale/smooth.json b/src/main/resources/data/mineralogy/tags/items/stones/shale/smooth.json index c0ac17bed..4eb1f5bb4 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/shale/smooth.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/shale/smooth.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:shale_smooth" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:shale_smooth", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/shale/smooth_brick.json b/src/main/resources/data/mineralogy/tags/items/stones/shale/smooth_brick.json index f87e41f64..43231cef2 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/shale/smooth_brick.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/shale/smooth_brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:shale_smooth_brick" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:shale_smooth_brick", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/siltstone/brick.json b/src/main/resources/data/mineralogy/tags/items/stones/siltstone/brick.json index e156e2851..f36d03b8c 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/siltstone/brick.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/siltstone/brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:siltstone_brick" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:siltstone_brick", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/siltstone/smooth.json b/src/main/resources/data/mineralogy/tags/items/stones/siltstone/smooth.json index 40a652aba..d5e668a43 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/siltstone/smooth.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/siltstone/smooth.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:siltstone_smooth" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:siltstone_smooth", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/siltstone/smooth_brick.json b/src/main/resources/data/mineralogy/tags/items/stones/siltstone/smooth_brick.json index 3ace16070..0577af741 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/siltstone/smooth_brick.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/siltstone/smooth_brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:siltstone_smooth_brick" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:siltstone_smooth_brick", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/slate/brick.json b/src/main/resources/data/mineralogy/tags/items/stones/slate/brick.json index 8d291b1f2..e5f800742 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/slate/brick.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/slate/brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:slate_brick" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:slate_brick", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/slate/smooth.json b/src/main/resources/data/mineralogy/tags/items/stones/slate/smooth.json index ead7f959d..82259accb 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/slate/smooth.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/slate/smooth.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:slate_smooth" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:slate_smooth", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/slate/smooth_brick.json b/src/main/resources/data/mineralogy/tags/items/stones/slate/smooth_brick.json index 50301895c..591f34102 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/slate/smooth_brick.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/slate/smooth_brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:slate_smooth_brick" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:slate_smooth_brick", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/tuff/brick.json b/src/main/resources/data/mineralogy/tags/items/stones/tuff/brick.json index 1c1e95f53..9e121d846 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/tuff/brick.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/tuff/brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:tuff_brick" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:tuff_brick", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/tuff/smooth.json b/src/main/resources/data/mineralogy/tags/items/stones/tuff/smooth.json index 09c8e7619..14e5898c0 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/tuff/smooth.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/tuff/smooth.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:tuff_smooth" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:tuff_smooth", + "required": false + } + ] } diff --git a/src/main/resources/data/mineralogy/tags/items/stones/tuff/smooth_brick.json b/src/main/resources/data/mineralogy/tags/items/stones/tuff/smooth_brick.json index db7ed6370..f80d1944f 100644 --- a/src/main/resources/data/mineralogy/tags/items/stones/tuff/smooth_brick.json +++ b/src/main/resources/data/mineralogy/tags/items/stones/tuff/smooth_brick.json @@ -1,6 +1,9 @@ { - "replace": false, - "values": [ - "mineralogy:tuff_smooth_brick" - ] + "replace": false, + "values": [ + { + "id": "mineralogy:tuff_smooth_brick", + "required": false + } + ] } diff --git a/src/recipeIntegrationTest/java/zone/moddev/mc/mineralogy/fixture/RecipeIntegrationAssertions.java b/src/recipeIntegrationTest/java/zone/moddev/mc/mineralogy/fixture/RecipeIntegrationAssertions.java new file mode 100644 index 000000000..82e8aac2a --- /dev/null +++ b/src/recipeIntegrationTest/java/zone/moddev/mc/mineralogy/fixture/RecipeIntegrationAssertions.java @@ -0,0 +1,456 @@ +package zone.moddev.mc.mineralogy.fixture; + +import java.io.IOException; +import java.nio.charset.StandardCharsets; +import java.nio.file.Files; +import java.nio.file.Path; +import java.util.LinkedHashMap; +import java.util.ArrayList; +import java.util.List; +import java.util.Map; + +import net.minecraft.core.BlockPos; +import net.minecraft.resources.ResourceLocation; +import net.minecraft.tags.BlockTags; +import net.minecraft.world.SimpleContainer; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.inventory.AbstractContainerMenu; +import net.minecraft.world.inventory.CraftingContainer; +import net.minecraft.world.inventory.TransientCraftingContainer; +import net.minecraft.world.item.Item; +import net.minecraft.world.item.ItemStack; +import net.minecraft.world.item.Items; +import net.minecraft.world.item.crafting.CraftingRecipe; +import net.minecraft.world.item.crafting.RecipeHolder; +import net.minecraft.world.item.crafting.StonecutterRecipe; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.Blocks; +import net.minecraft.world.level.block.entity.BlockEntity; +import net.minecraftforge.common.MinecraftForge; +import net.minecraftforge.event.server.ServerStartedEvent; +import net.minecraftforge.fml.common.Mod; +import net.minecraftforge.registries.ForgeRegistries; +import zone.moddev.mc.mineralogy.blocks.RockFurnace; +import zone.moddev.mc.mineralogy.tileentity.TileEntityRockFurnace; + +/** Exact-loader probe for generated recipe and advancement data. */ +public final class RecipeIntegrationAssertions { + public static final String MODID = "mineralogyrecipeprobe"; + + private static final String[] RECIPE_NAMES = { + "furnace", "brewing_stand", "lever", "piston", "dispenser", "dropper", + "observer", "mossy_cobblestone_from_vine", + "mossy_cobblestone_from_moss_block", "andesite", "diorite", "stone_axe", + "stone_hoe", "stone_pickaxe", "stone_shovel", "stone_sword", + "coast_armor_trim_smithing_template", "sentry_armor_trim_smithing_template", + "vex_armor_trim_smithing_template" + }; + + private static final String[] LEGACY_ROCKS = { + "andesite", "basalt", "diorite", "granite", "rhyolite", "pegmatite", + "diabase", "gabbro", "peridotite", "basaltic_glass", "scoria", "tuff", + "shale", "conglomerate", "dolomite", "limestone", "siltstone", "marble", + "slate", "schist", "gneiss", "phyllite", "amphibolite", "hornfels", + "quartzite", "novaculite", "rock_salt" + }; + + public static void verify(ServerStartedEvent event, boolean enabled, String phase) { + Level level = event.getServer().overworld(); + Item basalt = requireItem("mineralogy", "basalt"); + + verifyMiningTags(); + for (String name : RECIPE_NAMES) { + CraftingRecipe recipe = requireCraftingRecipe(level, name); + if (enabled) { + for (String rockName : LEGACY_ROCKS) { + Item rock = requireItem("mineralogy", rockName); + require(recipe.matches(inventory(name, rock), level), + name + " rejected mineralogy:" + rockName); + } + for (Item nativeRock : new Item[] { Blocks.BASALT.asItem(), Blocks.TUFF.asItem(), + Blocks.ANDESITE.asItem(), Blocks.DIORITE.asItem(), + Blocks.GRANITE.asItem() }) { + require(recipe.matches(inventory(name, nativeRock), level), + name + " rejected native " + ForgeRegistries.ITEMS.getKey(nativeRock)); + } + } else { + require(!recipe.matches(inventory(name, basalt), level), + name + " accepted ordinary Mineralogy basalt while disabled"); + require(recipe.matches(inventory(name, Blocks.COBBLESTONE.asItem()), level), + name + " rejected vanilla cobblestone while disabled"); + if (!isTrimTemplateRecipe(name)) { + require(recipe.matches(inventory(name, requireItem("mineralogy", "chert")), level), + name + " rejected unconditional chert"); + require(recipe.matches(inventory(name, requireItem("mineralogy", "pumice")), level), + name + " rejected unconditional pumice"); + } + } + + ItemStack result = recipe.assemble(inventory(name, + enabled ? basalt : Blocks.COBBLESTONE.asItem()), level.registryAccess()); + require(expectedOutput(name).equals(ForgeRegistries.ITEMS.getKey(result.getItem())), + name + " produced " + ForgeRegistries.ITEMS.getKey(result.getItem())); + require(result.getCount() == (isTrimTemplateRecipe(name) ? 2 : expectedCount(name)), + name + " produced count " + result.getCount()); + } + + verifySlabRoutes(level); + verifyFurnaceStateTransitions(level, phase); + verifyAdvancements(event); + writeMarker(enabled, phase); + + } + + private static void verifyMiningTags() { + List missingPickaxeTags = new ArrayList<>(); + int mineralogyBlocks = 0; + int expectedPickaxeBlocks = 0; + int ironToolBlocks = 0; + int stoneToolBlocks = 0; + for (Block block : ForgeRegistries.BLOCKS.getValues()) { + ResourceLocation id = ForgeRegistries.BLOCKS.getKey(block); + if (id == null || !"mineralogy".equals(id.getNamespace())) continue; + mineralogyBlocks++; + String path = id.getPath(); + if ("crude_oil".equals(path) || "rocksaltlamp".equals(path) + || "rocksaltstreetlamp".equals(path)) continue; + expectedPickaxeBlocks++; + if (!block.defaultBlockState().is(BlockTags.MINEABLE_WITH_PICKAXE)) { + missingPickaxeTags.add(id.toString()); + } + if (block.defaultBlockState().is(BlockTags.NEEDS_IRON_TOOL)) ironToolBlocks++; + if (block.defaultBlockState().is(BlockTags.NEEDS_STONE_TOOL)) stoneToolBlocks++; + } + require(mineralogyBlocks == 1136, "expected 1136 registered Mineralogy blocks, found " + mineralogyBlocks); + require(expectedPickaxeBlocks == 1133, "expected 1133 pickaxe-mined Mineralogy blocks, found " + expectedPickaxeBlocks); + require(missingPickaxeTags.isEmpty(), "Mineralogy blocks missing minecraft:mineable/pickaxe: " + missingPickaxeTags); + require(ironToolBlocks == 123, "expected 123 iron-tool Mineralogy blocks, found " + ironToolBlocks); + require(stoneToolBlocks == 329, "expected 329 stone-tool Mineralogy blocks, found " + stoneToolBlocks); + require(requireBlock("mineralogy", "basalt").defaultBlockState().is(BlockTags.NEEDS_IRON_TOOL), + "raw basalt lost its iron-tool tier"); + require(requireBlock("mineralogy", "basalt_smooth").defaultBlockState().is(BlockTags.NEEDS_IRON_TOOL), + "polished basalt lost its iron-tool tier"); + ItemStack diamondPickaxe = new ItemStack(Items.DIAMOND_PICKAXE); + for (String basalt : new String[] { "basalt", "basalt_smooth", "basalt_brick", + "basalt_slab", "basalt_furnace" }) { + Block block = requireBlock("mineralogy", basalt); + require(diamondPickaxe.isCorrectToolForDrops(block.defaultBlockState()), + "diamond pickaxe cannot harvest mineralogy:" + basalt); + require(diamondPickaxe.getDestroySpeed(block.defaultBlockState()) > 1.0F, + "diamond pickaxe has no mining-speed bonus for mineralogy:" + basalt); + } + } + + private static void verifyFurnaceStateTransitions(Level level, String phase) { + BlockPos pos = new BlockPos(0, level.getMinBuildHeight() + 10, 0); + Block unlit = requireBlock("mineralogy", "basalt_furnace"); + Block lit = requireBlock("mineralogy", "lit_basalt_furnace"); + + if (phase.contains("reload")) { + require(level.getBlockState(pos).is(unlit), "persisted furnace is not unlit"); + BlockEntity persisted = level.getBlockEntity(pos); + require(persisted instanceof TileEntityRockFurnace, + "persisted basalt furnace lost its block entity"); + TileEntityRockFurnace furnace = (TileEntityRockFurnace) persisted; + require(furnace.getBlockState().equals(level.getBlockState(pos)), + "persisted furnace has a stale block-entity state"); + require(furnace.getItem(1).is(Items.COAL) && furnace.getItem(1).getCount() == 1, + "persisted furnace lost its fuel"); + RockFurnace.setState(true, level, pos); + assertFurnaceState(level, pos, lit, furnace, "reload lit"); + RockFurnace.setState(false, level, pos); + assertFurnaceState(level, pos, unlit, furnace, "reload unlit"); + if ("reload".equals(phase)) level.removeBlock(pos, false); + return; + } + + level.setBlockAndUpdate(pos, unlit.defaultBlockState()); + try { + BlockEntity initial = level.getBlockEntity(pos); + require(initial instanceof TileEntityRockFurnace, "basalt furnace did not create its block entity"); + TileEntityRockFurnace furnace = (TileEntityRockFurnace) initial; + furnace.setItem(1, new ItemStack(Items.COAL)); + RockFurnace.setState(true, level, pos); + assertFurnaceState(level, pos, lit, furnace, "lit"); + require(furnace.getItem(1).is(Items.COAL) && furnace.getItem(1).getCount() == 1, + "lit transition lost the furnace fuel"); + RockFurnace.setState(false, level, pos); + assertFurnaceState(level, pos, unlit, furnace, "unlit"); + require(furnace.getItem(1).is(Items.COAL) && furnace.getItem(1).getCount() == 1, + "unlit transition lost the furnace fuel"); + } finally { + if (!"first".equals(phase)) level.removeBlock(pos, false); + } + } + + private static void assertFurnaceState(Level level, BlockPos pos, Block expectedBlock, + TileEntityRockFurnace expectedEntity, String transition) { + require(level.getBlockState(pos).is(expectedBlock), transition + " transition selected the wrong furnace block"); + require(level.getBlockEntity(pos) == expectedEntity, transition + " transition replaced the furnace block entity"); + require(expectedEntity.getBlockState().equals(level.getBlockState(pos)), + transition + " transition left a stale block-entity state"); + } + + private static void verifySlabRoutes(Level level) { + for (String family : new String[] { "andesite", "diorite", "granite" }) { + Item nativeRock = requireItem("minecraft", family); + CraftingRecipe slab = requireCraftingRecipe(level, family + "_slab"); + CraftingContainer slabInput = shaped(new String[] { "###" }, Map.of('#', nativeRock)); + require(slab.matches(slabInput, level), family + " slab override does not match"); + require(ResourceLocation.fromNamespaceAndPath("mineralogy", family + "_slab").equals( + ForgeRegistries.ITEMS.getKey(slab.assemble(slabInput, level.registryAccess()).getItem())), + family + " slab override did not produce Mineralogy's slab"); + + assertBridge(level, family + "_slab_to_vanilla", + requireItem("mineralogy", family + "_slab"), + requireItem("minecraft", family + "_slab")); + assertBridge(level, family + "_slab_from_vanilla", + requireItem("minecraft", family + "_slab"), + requireItem("mineralogy", family + "_slab")); + assertBridge(level, family + "_smooth_slab_to_vanilla", + requireItem("mineralogy", family + "_smooth_slab"), + requireItem("minecraft", "polished_" + family + "_slab")); + assertBridge(level, family + "_smooth_slab_from_vanilla", + requireItem("minecraft", "polished_" + family + "_slab"), + requireItem("mineralogy", family + "_smooth_slab")); + + assertStonecutting(level, family + "_slab_from_" + family + "_stonecutting", + nativeRock, requireItem("mineralogy", family + "_slab")); + assertStonecutting(level, "polished_" + family + "_slab_from_" + family + + "_stonecutting", nativeRock, + requireItem("mineralogy", family + "_smooth_slab")); + assertStonecutting(level, "polished_" + family + "_slab_from_polished_" + + family + "_stonecutting", requireItem("minecraft", "polished_" + family), + requireItem("mineralogy", family + "_smooth_slab")); + } + } + + private static void assertStonecutting(Level level, String name, Item source, Item expected) { + RecipeHolder holder = level.getRecipeManager().byKey( + ResourceLocation.fromNamespaceAndPath("minecraft", name)).orElseThrow(() -> + new IllegalStateException("Missing loaded stonecutting recipe minecraft:" + name)); + require(holder.value() instanceof StonecutterRecipe, + "minecraft:" + name + " is not a stonecutting recipe"); + StonecutterRecipe recipe = (StonecutterRecipe) holder.value(); + SimpleContainer input = new SimpleContainer(new ItemStack(source)); + require(recipe.matches(input, level), name + " does not match its native source"); + ItemStack output = recipe.assemble(input, level.registryAccess()); + require(output.getItem() == expected && output.getCount() == 2, + name + " did not produce two matching Mineralogy slabs"); + } + + private static void assertBridge(Level level, String name, Item source, Item expected) { + CraftingRecipe recipe = requireCraftingRecipe(level, name, "mineralogy"); + CraftingContainer input = shapeless(source); + require(recipe.matches(input, level), name + " does not match its exact source"); + ItemStack output = recipe.assemble(input, level.registryAccess()); + require(output.getItem() == expected && output.getCount() == 1, + name + " did not produce its exact one-for-one result"); + } + + private static void verifyAdvancements(ServerStartedEvent event) { + for (String name : RECIPE_NAMES) { + if (isTrimTemplateRecipe(name)) continue; + String category = advancementCategory(name); + ResourceLocation id = ResourceLocation.fromNamespaceAndPath( + "minecraft", "recipes/" + category + "/" + name); + require(event.getServer().getAdvancements().get(id) != null, + "Missing loaded advancement " + id); + } + for (String id : new String[] { "basalt_slab", "basalt_smooth_stairs", + "basalt_furnace", "basalt_relief_blank", "basalt_relief_pickaxe" }) { + ResourceLocation advancement = ResourceLocation.fromNamespaceAndPath( + "mineralogy", "recipes/" + id); + require(event.getServer().getAdvancements().get(advancement) != null, + "Missing progressive advancement " + advancement); + } + } + + private static CraftingRecipe requireCraftingRecipe(Level level, String name) { + return requireCraftingRecipe(level, name, "minecraft"); + } + + private static CraftingRecipe requireCraftingRecipe(Level level, String name, String namespace) { + RecipeHolder holder = level.getRecipeManager().byKey( + ResourceLocation.fromNamespaceAndPath(namespace, name)).orElseThrow(() -> + new IllegalStateException("Missing loaded recipe " + namespace + ':' + name)); + require(holder.value() instanceof CraftingRecipe, + namespace + ':' + name + " is not a crafting recipe"); + return (CraftingRecipe) holder.value(); + } + + private static CraftingContainer inventory(String name, Item rock) { + if ("mossy_cobblestone_from_vine".equals(name)) return shapeless(rock, Blocks.VINE.asItem()); + if ("mossy_cobblestone_from_moss_block".equals(name)) { + return shapeless(rock, Blocks.MOSS_BLOCK.asItem()); + } + if ("andesite".equals(name)) return shapeless(Blocks.DIORITE.asItem(), rock); + if (isTrimTemplateRecipe(name)) { + Item template = "coast_armor_trim_smithing_template".equals(name) + ? Items.COAST_ARMOR_TRIM_SMITHING_TEMPLATE + : "sentry_armor_trim_smithing_template".equals(name) + ? Items.SENTRY_ARMOR_TRIM_SMITHING_TEMPLATE + : Items.VEX_ARMOR_TRIM_SMITHING_TEMPLATE; + return shaped(new String[] { "#S#", "#C#", "###" }, + Map.of('#', Items.DIAMOND, 'S', template, 'C', rock)); + } + + Map ingredients = new LinkedHashMap<>(); + ingredients.put('#', rock); + String[] pattern; + switch (name) { + case "furnace" -> pattern = new String[] { "###", "# #", "###" }; + case "brewing_stand" -> { + pattern = new String[] { " B ", "###" }; + ingredients.put('B', Items.BLAZE_ROD); + } + case "lever" -> { + pattern = new String[] { "X", "#" }; + ingredients.put('X', Items.STICK); + } + case "piston" -> { + pattern = new String[] { "TTT", "#X#", "#R#" }; + ingredients.put('T', Blocks.OAK_PLANKS.asItem()); + ingredients.put('X', Items.IRON_INGOT); + ingredients.put('R', Items.REDSTONE); + } + case "dispenser" -> { + pattern = new String[] { "###", "#X#", "#R#" }; + ingredients.put('X', Items.BOW); + ingredients.put('R', Items.REDSTONE); + } + case "dropper" -> { + pattern = new String[] { "###", "# #", "#R#" }; + ingredients.put('R', Items.REDSTONE); + } + case "observer" -> { + pattern = new String[] { "###", "RRQ", "###" }; + ingredients.put('R', Items.REDSTONE); + ingredients.put('Q', Items.QUARTZ); + } + case "diorite" -> { + pattern = new String[] { "CQ", "QC" }; + ingredients.put('C', rock); + ingredients.put('Q', Items.QUARTZ); + } + case "stone_axe" -> { + pattern = new String[] { "XX", "X#", " #" }; + ingredients.put('X', rock); + ingredients.put('#', Items.STICK); + } + case "stone_hoe" -> { + pattern = new String[] { "XX", " #", " #" }; + ingredients.put('X', rock); + ingredients.put('#', Items.STICK); + } + case "stone_pickaxe" -> { + pattern = new String[] { "XXX", " # ", " # " }; + ingredients.put('X', rock); + ingredients.put('#', Items.STICK); + } + case "stone_shovel" -> { + pattern = new String[] { "X", "#", "#" }; + ingredients.put('X', rock); + ingredients.put('#', Items.STICK); + } + case "stone_sword" -> { + pattern = new String[] { "X", "X", "#" }; + ingredients.put('X', rock); + ingredients.put('#', Items.STICK); + } + default -> throw new IllegalArgumentException(name); + } + return shaped(pattern, ingredients); + } + + private static CraftingContainer shaped(String[] pattern, Map ingredients) { + CraftingContainer inventory = new TransientCraftingContainer(dummyContainer(), 3, 3); + for (int row = 0; row < pattern.length; row++) { + for (int column = 0; column < pattern[row].length(); column++) { + Item item = ingredients.get(pattern[row].charAt(column)); + if (item != null) inventory.setItem(row * 3 + column, new ItemStack(item)); + } + } + return inventory; + } + + private static CraftingContainer shapeless(Item... items) { + CraftingContainer inventory = new TransientCraftingContainer(dummyContainer(), 3, 3); + for (int index = 0; index < items.length; index++) { + inventory.setItem(index, new ItemStack(items[index])); + } + return inventory; + } + + private static AbstractContainerMenu dummyContainer() { + return new AbstractContainerMenu(null, -1) { + @Override public ItemStack quickMoveStack(Player player, int index) { return ItemStack.EMPTY; } + @Override public boolean stillValid(Player player) { return false; } + }; + } + + private static Item requireItem(String namespace, String path) { + Item result = ForgeRegistries.ITEMS.getValue( + ResourceLocation.fromNamespaceAndPath(namespace, path)); + if (result == null) throw new IllegalStateException("Missing item " + namespace + ':' + path); + return result; + } + + private static Block requireBlock(String namespace, String path) { + ResourceLocation id = ResourceLocation.fromNamespaceAndPath(namespace, path); + Block block = ForgeRegistries.BLOCKS.getValue(id); + require(block != null && block != Blocks.AIR, "missing block " + id); + return block; + } + + private static ResourceLocation expectedOutput(String name) { + String path = name.startsWith("mossy_cobblestone_from_") ? "mossy_cobblestone" : name; + return ResourceLocation.fromNamespaceAndPath("minecraft", path); + } + + private static int expectedCount(String name) { + return "andesite".equals(name) || "diorite".equals(name) ? 2 : 1; + } + + private static boolean isTrimTemplateRecipe(String name) { + return name.endsWith("_armor_trim_smithing_template"); + } + + private static String advancementCategory(String name) { + if ("furnace".equals(name)) return "decorations"; + if ("brewing_stand".equals(name)) return "brewing"; + if (name.startsWith("stone_")) return "stone_sword".equals(name) ? "combat" : "tools"; + if ("andesite".equals(name) || "diorite".equals(name) + || name.startsWith("mossy_cobblestone")) return "building_blocks"; + return "redstone"; + } + + private static void writeMarker(boolean enabled, String phase) { + String result = "forge_recipe_manager_loaded=true\n" + + "equivalence_enabled=" + enabled + "\n" + + "phase=" + phase + "\n" + + "covered_vanilla_recipes=19\n" + + "legacy_rock_families=27\n" + + "native_rock_aliases=5\n" + + "pickaxe_mining_blocks_verified=1133\n" + + "iron_tool_blocks_verified=123\n" + + "stone_tool_blocks_verified=329\n" + + "diamond_pickaxe_harvest_verified=true\n" + + "furnace_state_transitions_verified=true\n" + + "furnace_reload_verified=" + phase.contains("reload") + "\n" + + "shared_stonecutting_routes=9\n" + + "slab_bridges=12\n" + + "progressive_advancements_loaded=true\n"; + try { + Files.writeString(Path.of("recipe-integration-pass.properties"), result, + StandardCharsets.UTF_8); + } catch (IOException exception) { + throw new IllegalStateException("Could not write recipe integration marker", exception); + } + } + + private static void require(boolean condition, String message) { + if (!condition) throw new IllegalStateException(message); + } +} diff --git a/src/recipeIntegrationTest/java/zone/moddev/mc/mineralogy/fixture/RecipeIntegrationProbe.java b/src/recipeIntegrationTest/java/zone/moddev/mc/mineralogy/fixture/RecipeIntegrationProbe.java index be94279e9..c1f00971e 100644 --- a/src/recipeIntegrationTest/java/zone/moddev/mc/mineralogy/fixture/RecipeIntegrationProbe.java +++ b/src/recipeIntegrationTest/java/zone/moddev/mc/mineralogy/fixture/RecipeIntegrationProbe.java @@ -1,464 +1,21 @@ package zone.moddev.mc.mineralogy.fixture; -import java.io.IOException; -import java.nio.charset.StandardCharsets; -import java.nio.file.Files; -import java.nio.file.Path; -import java.util.LinkedHashMap; -import java.util.ArrayList; -import java.util.List; -import java.util.Map; - -import net.minecraft.core.BlockPos; -import net.minecraft.resources.ResourceLocation; -import net.minecraft.tags.BlockTags; -import net.minecraft.world.SimpleContainer; -import net.minecraft.world.entity.player.Player; -import net.minecraft.world.inventory.AbstractContainerMenu; -import net.minecraft.world.inventory.CraftingContainer; -import net.minecraft.world.inventory.TransientCraftingContainer; -import net.minecraft.world.item.Item; -import net.minecraft.world.item.ItemStack; -import net.minecraft.world.item.Items; -import net.minecraft.world.item.crafting.CraftingRecipe; -import net.minecraft.world.item.crafting.RecipeHolder; -import net.minecraft.world.item.crafting.StonecutterRecipe; -import net.minecraft.world.level.Level; -import net.minecraft.world.level.block.Block; -import net.minecraft.world.level.block.Blocks; -import net.minecraft.world.level.block.entity.BlockEntity; -import net.minecraftforge.common.MinecraftForge; import net.minecraftforge.event.server.ServerStartedEvent; import net.minecraftforge.fml.common.Mod; -import net.minecraftforge.registries.ForgeRegistries; -import zone.moddev.mc.mineralogy.blocks.RockFurnace; -import zone.moddev.mc.mineralogy.tileentity.TileEntityRockFurnace; -/** Exact-loader probe for generated recipe and advancement data. */ +/** Standalone entry point for the non-shipping native recipe assertions. */ @Mod(RecipeIntegrationProbe.MODID) public final class RecipeIntegrationProbe { public static final String MODID = "mineralogyrecipeprobe"; - private static final String[] RECIPE_NAMES = { - "furnace", "brewing_stand", "lever", "piston", "dispenser", "dropper", - "observer", "mossy_cobblestone_from_vine", - "mossy_cobblestone_from_moss_block", "andesite", "diorite", "stone_axe", - "stone_hoe", "stone_pickaxe", "stone_shovel", "stone_sword", - "coast_armor_trim_smithing_template", "sentry_armor_trim_smithing_template", - "vex_armor_trim_smithing_template" - }; - - private static final String[] LEGACY_ROCKS = { - "andesite", "basalt", "diorite", "granite", "rhyolite", "pegmatite", - "diabase", "gabbro", "peridotite", "basaltic_glass", "scoria", "tuff", - "shale", "conglomerate", "dolomite", "limestone", "siltstone", "marble", - "slate", "schist", "gneiss", "phyllite", "amphibolite", "hornfels", - "quartzite", "novaculite", "rock_salt" - }; - public RecipeIntegrationProbe() { - MinecraftForge.EVENT_BUS.addListener(this::serverStarted); + net.minecraftforge.common.MinecraftForge.EVENT_BUS.addListener(this::serverStarted); } private void serverStarted(ServerStartedEvent event) { - boolean enabled = Boolean.parseBoolean(System.getProperty( - "mineralogy.recipeProbe.equivalence", "true")); + boolean enabled = Boolean.parseBoolean(System.getProperty("mineralogy.recipeProbe.equivalence", "true")); String phase = System.getProperty("mineralogy.recipeProbe.phase", "single"); - Level level = event.getServer().overworld(); - Item basalt = requireItem("mineralogy", "basalt"); - - verifyMiningTags(); - for (String name : RECIPE_NAMES) { - CraftingRecipe recipe = requireCraftingRecipe(level, name); - if (enabled) { - for (String rockName : LEGACY_ROCKS) { - Item rock = requireItem("mineralogy", rockName); - require(recipe.matches(inventory(name, rock), level), - name + " rejected mineralogy:" + rockName); - } - for (Item nativeRock : new Item[] { Blocks.BASALT.asItem(), Blocks.TUFF.asItem(), - Blocks.ANDESITE.asItem(), Blocks.DIORITE.asItem(), - Blocks.GRANITE.asItem() }) { - require(recipe.matches(inventory(name, nativeRock), level), - name + " rejected native " + ForgeRegistries.ITEMS.getKey(nativeRock)); - } - } else { - require(!recipe.matches(inventory(name, basalt), level), - name + " accepted ordinary Mineralogy basalt while disabled"); - require(recipe.matches(inventory(name, Blocks.COBBLESTONE.asItem()), level), - name + " rejected vanilla cobblestone while disabled"); - if (!isTrimTemplateRecipe(name)) { - require(recipe.matches(inventory(name, requireItem("mineralogy", "chert")), level), - name + " rejected unconditional chert"); - require(recipe.matches(inventory(name, requireItem("mineralogy", "pumice")), level), - name + " rejected unconditional pumice"); - } - } - - ItemStack result = recipe.assemble(inventory(name, - enabled ? basalt : Blocks.COBBLESTONE.asItem()), level.registryAccess()); - require(expectedOutput(name).equals(ForgeRegistries.ITEMS.getKey(result.getItem())), - name + " produced " + ForgeRegistries.ITEMS.getKey(result.getItem())); - require(result.getCount() == (isTrimTemplateRecipe(name) ? 2 : expectedCount(name)), - name + " produced count " + result.getCount()); - } - - verifySlabRoutes(level); - verifyFurnaceStateTransitions(level, phase); - verifyAdvancements(event); - writeMarker(enabled, phase); + RecipeIntegrationAssertions.verify(event, enabled, phase); event.getServer().halt(false); } - - private static void verifyMiningTags() { - List missingPickaxeTags = new ArrayList<>(); - int mineralogyBlocks = 0; - int expectedPickaxeBlocks = 0; - int ironToolBlocks = 0; - int stoneToolBlocks = 0; - for (Block block : ForgeRegistries.BLOCKS.getValues()) { - ResourceLocation id = ForgeRegistries.BLOCKS.getKey(block); - if (id == null || !"mineralogy".equals(id.getNamespace())) continue; - mineralogyBlocks++; - String path = id.getPath(); - if ("crude_oil".equals(path) || "rocksaltlamp".equals(path) - || "rocksaltstreetlamp".equals(path)) continue; - expectedPickaxeBlocks++; - if (!block.defaultBlockState().is(BlockTags.MINEABLE_WITH_PICKAXE)) { - missingPickaxeTags.add(id.toString()); - } - if (block.defaultBlockState().is(BlockTags.NEEDS_IRON_TOOL)) ironToolBlocks++; - if (block.defaultBlockState().is(BlockTags.NEEDS_STONE_TOOL)) stoneToolBlocks++; - } - require(mineralogyBlocks == 1136, "expected 1136 registered Mineralogy blocks, found " + mineralogyBlocks); - require(expectedPickaxeBlocks == 1133, "expected 1133 pickaxe-mined Mineralogy blocks, found " + expectedPickaxeBlocks); - require(missingPickaxeTags.isEmpty(), "Mineralogy blocks missing minecraft:mineable/pickaxe: " + missingPickaxeTags); - require(ironToolBlocks == 123, "expected 123 iron-tool Mineralogy blocks, found " + ironToolBlocks); - require(stoneToolBlocks == 329, "expected 329 stone-tool Mineralogy blocks, found " + stoneToolBlocks); - require(requireBlock("mineralogy", "basalt").defaultBlockState().is(BlockTags.NEEDS_IRON_TOOL), - "raw basalt lost its iron-tool tier"); - require(requireBlock("mineralogy", "basalt_smooth").defaultBlockState().is(BlockTags.NEEDS_IRON_TOOL), - "polished basalt lost its iron-tool tier"); - ItemStack diamondPickaxe = new ItemStack(Items.DIAMOND_PICKAXE); - for (String basalt : new String[] { "basalt", "basalt_smooth", "basalt_brick", - "basalt_slab", "basalt_furnace" }) { - Block block = requireBlock("mineralogy", basalt); - require(diamondPickaxe.isCorrectToolForDrops(block.defaultBlockState()), - "diamond pickaxe cannot harvest mineralogy:" + basalt); - require(diamondPickaxe.getDestroySpeed(block.defaultBlockState()) > 1.0F, - "diamond pickaxe has no mining-speed bonus for mineralogy:" + basalt); - } - } - - private static void verifyFurnaceStateTransitions(Level level, String phase) { - BlockPos pos = new BlockPos(0, level.getMinBuildHeight() + 10, 0); - Block unlit = requireBlock("mineralogy", "basalt_furnace"); - Block lit = requireBlock("mineralogy", "lit_basalt_furnace"); - - if ("reload".equals(phase)) { - require(level.getBlockState(pos).is(unlit), "persisted furnace is not unlit"); - BlockEntity persisted = level.getBlockEntity(pos); - require(persisted instanceof TileEntityRockFurnace, - "persisted basalt furnace lost its block entity"); - TileEntityRockFurnace furnace = (TileEntityRockFurnace) persisted; - require(furnace.getBlockState().equals(level.getBlockState(pos)), - "persisted furnace has a stale block-entity state"); - require(furnace.getItem(1).is(Items.COAL) && furnace.getItem(1).getCount() == 1, - "persisted furnace lost its fuel"); - RockFurnace.setState(true, level, pos); - assertFurnaceState(level, pos, lit, furnace, "reload lit"); - RockFurnace.setState(false, level, pos); - assertFurnaceState(level, pos, unlit, furnace, "reload unlit"); - level.removeBlock(pos, false); - return; - } - - level.setBlockAndUpdate(pos, unlit.defaultBlockState()); - try { - BlockEntity initial = level.getBlockEntity(pos); - require(initial instanceof TileEntityRockFurnace, "basalt furnace did not create its block entity"); - TileEntityRockFurnace furnace = (TileEntityRockFurnace) initial; - furnace.setItem(1, new ItemStack(Items.COAL)); - RockFurnace.setState(true, level, pos); - assertFurnaceState(level, pos, lit, furnace, "lit"); - require(furnace.getItem(1).is(Items.COAL) && furnace.getItem(1).getCount() == 1, - "lit transition lost the furnace fuel"); - RockFurnace.setState(false, level, pos); - assertFurnaceState(level, pos, unlit, furnace, "unlit"); - require(furnace.getItem(1).is(Items.COAL) && furnace.getItem(1).getCount() == 1, - "unlit transition lost the furnace fuel"); - } finally { - if (!"first".equals(phase)) level.removeBlock(pos, false); - } - } - - private static void assertFurnaceState(Level level, BlockPos pos, Block expectedBlock, - TileEntityRockFurnace expectedEntity, String transition) { - require(level.getBlockState(pos).is(expectedBlock), transition + " transition selected the wrong furnace block"); - require(level.getBlockEntity(pos) == expectedEntity, transition + " transition replaced the furnace block entity"); - require(expectedEntity.getBlockState().equals(level.getBlockState(pos)), - transition + " transition left a stale block-entity state"); - } - - private static void verifySlabRoutes(Level level) { - for (String family : new String[] { "andesite", "diorite", "granite" }) { - Item nativeRock = requireItem("minecraft", family); - CraftingRecipe slab = requireCraftingRecipe(level, family + "_slab"); - CraftingContainer slabInput = shaped(new String[] { "###" }, Map.of('#', nativeRock)); - require(slab.matches(slabInput, level), family + " slab override does not match"); - require(ResourceLocation.fromNamespaceAndPath("mineralogy", family + "_slab").equals( - ForgeRegistries.ITEMS.getKey(slab.assemble(slabInput, level.registryAccess()).getItem())), - family + " slab override did not produce Mineralogy's slab"); - - assertBridge(level, family + "_slab_to_vanilla", - requireItem("mineralogy", family + "_slab"), - requireItem("minecraft", family + "_slab")); - assertBridge(level, family + "_slab_from_vanilla", - requireItem("minecraft", family + "_slab"), - requireItem("mineralogy", family + "_slab")); - assertBridge(level, family + "_smooth_slab_to_vanilla", - requireItem("mineralogy", family + "_smooth_slab"), - requireItem("minecraft", "polished_" + family + "_slab")); - assertBridge(level, family + "_smooth_slab_from_vanilla", - requireItem("minecraft", "polished_" + family + "_slab"), - requireItem("mineralogy", family + "_smooth_slab")); - - assertStonecutting(level, family + "_slab_from_" + family + "_stonecutting", - nativeRock, requireItem("mineralogy", family + "_slab")); - assertStonecutting(level, "polished_" + family + "_slab_from_" + family - + "_stonecutting", nativeRock, - requireItem("mineralogy", family + "_smooth_slab")); - assertStonecutting(level, "polished_" + family + "_slab_from_polished_" - + family + "_stonecutting", requireItem("minecraft", "polished_" + family), - requireItem("mineralogy", family + "_smooth_slab")); - } - } - - private static void assertStonecutting(Level level, String name, Item source, Item expected) { - RecipeHolder holder = level.getRecipeManager().byKey( - ResourceLocation.fromNamespaceAndPath("minecraft", name)).orElseThrow(() -> - new IllegalStateException("Missing loaded stonecutting recipe minecraft:" + name)); - require(holder.value() instanceof StonecutterRecipe, - "minecraft:" + name + " is not a stonecutting recipe"); - StonecutterRecipe recipe = (StonecutterRecipe) holder.value(); - SimpleContainer input = new SimpleContainer(new ItemStack(source)); - require(recipe.matches(input, level), name + " does not match its native source"); - ItemStack output = recipe.assemble(input, level.registryAccess()); - require(output.getItem() == expected && output.getCount() == 2, - name + " did not produce two matching Mineralogy slabs"); - } - - private static void assertBridge(Level level, String name, Item source, Item expected) { - CraftingRecipe recipe = requireCraftingRecipe(level, name, "mineralogy"); - CraftingContainer input = shapeless(source); - require(recipe.matches(input, level), name + " does not match its exact source"); - ItemStack output = recipe.assemble(input, level.registryAccess()); - require(output.getItem() == expected && output.getCount() == 1, - name + " did not produce its exact one-for-one result"); - } - - private static void verifyAdvancements(ServerStartedEvent event) { - for (String name : RECIPE_NAMES) { - if (isTrimTemplateRecipe(name)) continue; - String category = advancementCategory(name); - ResourceLocation id = ResourceLocation.fromNamespaceAndPath( - "minecraft", "recipes/" + category + "/" + name); - require(event.getServer().getAdvancements().get(id) != null, - "Missing loaded advancement " + id); - } - for (String id : new String[] { "basalt_slab", "basalt_smooth_stairs", - "basalt_furnace", "basalt_relief_blank", "basalt_relief_pickaxe" }) { - ResourceLocation advancement = ResourceLocation.fromNamespaceAndPath( - "mineralogy", "recipes/" + id); - require(event.getServer().getAdvancements().get(advancement) != null, - "Missing progressive advancement " + advancement); - } - } - - private static CraftingRecipe requireCraftingRecipe(Level level, String name) { - return requireCraftingRecipe(level, name, "minecraft"); - } - - private static CraftingRecipe requireCraftingRecipe(Level level, String name, String namespace) { - RecipeHolder holder = level.getRecipeManager().byKey( - ResourceLocation.fromNamespaceAndPath(namespace, name)).orElseThrow(() -> - new IllegalStateException("Missing loaded recipe " + namespace + ':' + name)); - require(holder.value() instanceof CraftingRecipe, - namespace + ':' + name + " is not a crafting recipe"); - return (CraftingRecipe) holder.value(); - } - - private static CraftingContainer inventory(String name, Item rock) { - if ("mossy_cobblestone_from_vine".equals(name)) return shapeless(rock, Blocks.VINE.asItem()); - if ("mossy_cobblestone_from_moss_block".equals(name)) { - return shapeless(rock, Blocks.MOSS_BLOCK.asItem()); - } - if ("andesite".equals(name)) return shapeless(Blocks.DIORITE.asItem(), rock); - if (isTrimTemplateRecipe(name)) { - Item template = "coast_armor_trim_smithing_template".equals(name) - ? Items.COAST_ARMOR_TRIM_SMITHING_TEMPLATE - : "sentry_armor_trim_smithing_template".equals(name) - ? Items.SENTRY_ARMOR_TRIM_SMITHING_TEMPLATE - : Items.VEX_ARMOR_TRIM_SMITHING_TEMPLATE; - return shaped(new String[] { "#S#", "#C#", "###" }, - Map.of('#', Items.DIAMOND, 'S', template, 'C', rock)); - } - - Map ingredients = new LinkedHashMap<>(); - ingredients.put('#', rock); - String[] pattern; - switch (name) { - case "furnace" -> pattern = new String[] { "###", "# #", "###" }; - case "brewing_stand" -> { - pattern = new String[] { " B ", "###" }; - ingredients.put('B', Items.BLAZE_ROD); - } - case "lever" -> { - pattern = new String[] { "X", "#" }; - ingredients.put('X', Items.STICK); - } - case "piston" -> { - pattern = new String[] { "TTT", "#X#", "#R#" }; - ingredients.put('T', Blocks.OAK_PLANKS.asItem()); - ingredients.put('X', Items.IRON_INGOT); - ingredients.put('R', Items.REDSTONE); - } - case "dispenser" -> { - pattern = new String[] { "###", "#X#", "#R#" }; - ingredients.put('X', Items.BOW); - ingredients.put('R', Items.REDSTONE); - } - case "dropper" -> { - pattern = new String[] { "###", "# #", "#R#" }; - ingredients.put('R', Items.REDSTONE); - } - case "observer" -> { - pattern = new String[] { "###", "RRQ", "###" }; - ingredients.put('R', Items.REDSTONE); - ingredients.put('Q', Items.QUARTZ); - } - case "diorite" -> { - pattern = new String[] { "CQ", "QC" }; - ingredients.put('C', rock); - ingredients.put('Q', Items.QUARTZ); - } - case "stone_axe" -> { - pattern = new String[] { "XX", "X#", " #" }; - ingredients.put('X', rock); - ingredients.put('#', Items.STICK); - } - case "stone_hoe" -> { - pattern = new String[] { "XX", " #", " #" }; - ingredients.put('X', rock); - ingredients.put('#', Items.STICK); - } - case "stone_pickaxe" -> { - pattern = new String[] { "XXX", " # ", " # " }; - ingredients.put('X', rock); - ingredients.put('#', Items.STICK); - } - case "stone_shovel" -> { - pattern = new String[] { "X", "#", "#" }; - ingredients.put('X', rock); - ingredients.put('#', Items.STICK); - } - case "stone_sword" -> { - pattern = new String[] { "X", "X", "#" }; - ingredients.put('X', rock); - ingredients.put('#', Items.STICK); - } - default -> throw new IllegalArgumentException(name); - } - return shaped(pattern, ingredients); - } - - private static CraftingContainer shaped(String[] pattern, Map ingredients) { - CraftingContainer inventory = new TransientCraftingContainer(dummyContainer(), 3, 3); - for (int row = 0; row < pattern.length; row++) { - for (int column = 0; column < pattern[row].length(); column++) { - Item item = ingredients.get(pattern[row].charAt(column)); - if (item != null) inventory.setItem(row * 3 + column, new ItemStack(item)); - } - } - return inventory; - } - - private static CraftingContainer shapeless(Item... items) { - CraftingContainer inventory = new TransientCraftingContainer(dummyContainer(), 3, 3); - for (int index = 0; index < items.length; index++) { - inventory.setItem(index, new ItemStack(items[index])); - } - return inventory; - } - - private static AbstractContainerMenu dummyContainer() { - return new AbstractContainerMenu(null, -1) { - @Override public ItemStack quickMoveStack(Player player, int index) { return ItemStack.EMPTY; } - @Override public boolean stillValid(Player player) { return false; } - }; - } - - private static Item requireItem(String namespace, String path) { - Item result = ForgeRegistries.ITEMS.getValue( - ResourceLocation.fromNamespaceAndPath(namespace, path)); - if (result == null) throw new IllegalStateException("Missing item " + namespace + ':' + path); - return result; - } - - private static Block requireBlock(String namespace, String path) { - ResourceLocation id = ResourceLocation.fromNamespaceAndPath(namespace, path); - Block block = ForgeRegistries.BLOCKS.getValue(id); - require(block != null && block != Blocks.AIR, "missing block " + id); - return block; - } - - private static ResourceLocation expectedOutput(String name) { - String path = name.startsWith("mossy_cobblestone_from_") ? "mossy_cobblestone" : name; - return ResourceLocation.fromNamespaceAndPath("minecraft", path); - } - - private static int expectedCount(String name) { - return "andesite".equals(name) || "diorite".equals(name) ? 2 : 1; - } - - private static boolean isTrimTemplateRecipe(String name) { - return name.endsWith("_armor_trim_smithing_template"); - } - - private static String advancementCategory(String name) { - if ("furnace".equals(name)) return "decorations"; - if ("brewing_stand".equals(name)) return "brewing"; - if (name.startsWith("stone_")) return "stone_sword".equals(name) ? "combat" : "tools"; - if ("andesite".equals(name) || "diorite".equals(name) - || name.startsWith("mossy_cobblestone")) return "building_blocks"; - return "redstone"; - } - - private static void writeMarker(boolean enabled, String phase) { - String result = "forge_recipe_manager_loaded=true\n" - + "equivalence_enabled=" + enabled + "\n" - + "phase=" + phase + "\n" - + "covered_vanilla_recipes=19\n" - + "legacy_rock_families=27\n" - + "native_rock_aliases=5\n" - + "pickaxe_mining_blocks_verified=1133\n" - + "iron_tool_blocks_verified=123\n" - + "stone_tool_blocks_verified=329\n" - + "diamond_pickaxe_harvest_verified=true\n" - + "furnace_state_transitions_verified=true\n" - + "furnace_reload_verified=" + "reload".equals(phase) + "\n" - + "shared_stonecutting_routes=9\n" - + "slab_bridges=12\n" - + "progressive_advancements_loaded=true\n"; - try { - Files.writeString(Path.of("recipe-integration-pass.properties"), result, - StandardCharsets.UTF_8); - } catch (IOException exception) { - throw new IllegalStateException("Could not write recipe integration marker", exception); - } - } - - private static void require(boolean condition, String message) { - if (!condition) throw new IllegalStateException(message); - } } diff --git a/src/terrainCompatibilityTest/java/zone/moddev/mc/mineralogy/compatprobe/TerrainCompatibilityProbe.java b/src/terrainCompatibilityTest/java/zone/moddev/mc/mineralogy/compatprobe/TerrainCompatibilityProbe.java index 372da01dd..15348e4cb 100644 --- a/src/terrainCompatibilityTest/java/zone/moddev/mc/mineralogy/compatprobe/TerrainCompatibilityProbe.java +++ b/src/terrainCompatibilityTest/java/zone/moddev/mc/mineralogy/compatprobe/TerrainCompatibilityProbe.java @@ -35,6 +35,11 @@ private void started(ServerStartedEvent event) { if (Boolean.getBoolean("mineralogy.compatProbe.client")) return; MinecraftServer server = event.getServer(); try { + if (Boolean.getBoolean("mineralogy.compatProbe.baseline")) { + verifyNarrowChecks(server.overworld(), "baseline", false); + finish(server, null); + return; + } if (Boolean.getBoolean("mineralogy.compatProbe.caveSample")) { sampleCaves(server.overworld()); finish(server, null); @@ -52,8 +57,236 @@ private void started(ServerStartedEvent event) { } private void test(ServerLevel level, String phase) throws Exception { verifyTags(phase); + verifyConstructionLoot(level, phase); + verifyClassifications(phase); + verifyCarverPolicy(level, phase); + verifyGoatsAndCats(level, phase); verifyCatalysts(level, phase); verifyFeatures(level, phase); + verifyNarrowChecks(level, phase, true); + verifyRootsAndForestRocks(level, phase); + if (!Boolean.getBoolean("mineralogy.compatProbe.constructionDisabled")) { + String recipePhase = phase.equals("reload") ? "resource-reload" + : System.getProperty("mineralogy.compatProbe.cycle", "fresh").equals("reload") ? "persisted-reload" : "first"; + zone.moddev.mc.mineralogy.fixture.RecipeIntegrationAssertions.verify(new ServerStartedEvent(level.getServer()), + zone.moddev.mc.mineralogy.MineralogyConfig.makeRockCobblestoneEquivilent(), recipePhase); + evidence.add(phase + ": native recipe/advancement managers and slab routes, mining/drops and furnace state/reload assertions passed"); + } + } + private void verifyCarverPolicy(ServerLevel level, String phase) throws Exception { + var carver = level.registryAccess().lookupOrThrow(Registries.CONFIGURED_CARVER) + .getOrThrow(ResourceKey.create(Registries.CONFIGURED_CARVER, id("minecraft:cave"))).value(); + require((Boolean)call(carver.worldCarver(), "canReplaceBlock", carver.config(), Blocks.STONE.defaultBlockState()), "Native stone carver control"); + require(!(Boolean)call(carver.worldCarver(), "canReplaceBlock", carver.config(), Blocks.BEDROCK.defaultBlockState()), "Native bedrock carver exclusion"); + for (String name : raw()) + require(!(Boolean)call(carver.worldCarver(), "canReplaceBlock", carver.config(), block(name).defaultBlockState()), "Broadened native carver hosts: " + name); + evidence.add(phase + ": native positive carver hosts unchanged; stone accepted, bedrock and 31 Mineralogy rocks rejected. OreSpawn replacement follows carving, so no carver-tag addition"); + } + private void verifyConstructionLoot(ServerLevel level, String phase) throws Exception { + var registries = level.getServer().reloadableRegistries(); + var tables = registries.getKeys(Registries.LOOT_TABLE).stream() + .filter(key -> key.getNamespace().equals("mineralogy") && key.getPath().startsWith("blocks/")).toList(); + require(tables.size() == 919, "Missing loaded Mineralogy loot tables: " + tables.size()); + boolean disabled = Boolean.getBoolean("mineralogy.compatProbe.constructionDisabled"); + int guarded = 0; + for (var name : tables) { + if (!name.getPath().matches("blocks/(lit_)?(.+)(_smooth|_brick|_slab|_stairs|_wall|_furnace|_relief_.+)")) continue; + var table = registries.getLootTable(ResourceKey.create(Registries.LOOT_TABLE, name)); + boolean entries = false; + for (Object pool : (List)field(table, "pools")) + if (!((List)field(pool, "entries")).isEmpty()) entries = true; + require(entries != disabled, "Native construction loot guard " + name); + guarded++; + } + require(guarded == 864, "Loaded construction loot guard count: " + guarded); + evidence.add(phase + ": all 919 native loot tables loaded; 864 construction pools " + (disabled ? "empty" : "retained")); + } + private void verifyClassifications(String phase) throws Exception { + com.google.gson.JsonObject contract; + try (var reader = new java.io.InputStreamReader(getClass().getResourceAsStream("/tag-compatibility-contract.json"), StandardCharsets.UTF_8)) { + contract = com.google.gson.JsonParser.parseReader(reader).getAsJsonObject(); + } + int checked = 0; + for (var entry : contract.getAsJsonObject("tags").entrySet()) { + String path = entry.getKey(); + String namespace = path.substring(0, path.indexOf('/')); + String kind = path.contains("/tags/blocks/") ? "blocks" : "items"; + String tagPath = path.substring(path.indexOf("/tags/" + kind + "/") + ("/tags/" + kind + "/").length(), path.length() - 5); + for (var member : entry.getValue().getAsJsonArray()) { + boolean optional = member.isJsonObject(); + String memberId = optional ? member.getAsJsonObject().get("id").getAsString() : member.getAsString(); + if (memberId.startsWith("#")) { + ResourceLocation inherited = id(memberId.substring(1)); + if (kind.equals("blocks")) { + for (var holder : BuiltInRegistries.BLOCK.getTagOrEmpty(TagKey.create(Registries.BLOCK, inherited))) { + require(holder.value().defaultBlockState().is(blockTag(namespace + ":" + tagPath)), + "Lost inherited block member " + path + " from " + memberId); + } + } else { + for (var holder : BuiltInRegistries.ITEM.getTagOrEmpty(TagKey.create(Registries.ITEM, inherited))) { + require(new ItemStack(holder.value()).is(TagKey.create(Registries.ITEM, id(namespace + ":" + tagPath))), + "Lost inherited item member " + path + " from " + memberId); + } + } + continue; + } + if (kind.equals("blocks")) { + Block value = BuiltInRegistries.BLOCK.get(id(memberId)); + if (optional && (value == null || value == Blocks.AIR)) continue; + require(value != null && value != Blocks.AIR, "Missing required block " + memberId); + require(value.defaultBlockState().is(blockTag(namespace + ":" + tagPath)), "Loaded block classification " + path + " " + memberId); + } else { + var value = BuiltInRegistries.ITEM.get(id(memberId)); + if (optional && (value == null || value == Blocks.AIR.asItem())) continue; + require(value != null && value != Blocks.AIR.asItem(), "Missing required item " + memberId); + require(new ItemStack(value).is(TagKey.create(Registries.ITEM, id(namespace + ":" + tagPath))), "Loaded item classification " + path + " " + memberId); + } + checked++; + } + } + boolean enabled = zone.moddev.mc.mineralogy.MineralogyConfig.makeRockCobblestoneEquivilent(); + for (String name : List.of("mineralogy:basalt", "minecraft:basalt", "mineralogy:chert", "mineralogy:pumice")) { + boolean wanted = enabled || name.endsWith(":chert") || name.endsWith(":pumice"); + for (String tag : List.of("forge:cobblestone", "forge:cobblestone/normal")) { + require(block(name).defaultBlockState().is(blockTag(tag)) == wanted, "Block cobblestone option " + tag + " " + name); + require(new ItemStack(block(name)).is(TagKey.create(Registries.ITEM, id(tag))) == wanted, "Item cobblestone option " + tag + " " + name); + } + } + for (String tag : List.of("forge:cobblestone", "forge:cobblestone/normal")) { + require(Blocks.GOLD_BLOCK.defaultBlockState().is(blockTag(tag)), "Lost third-party block cobblestone " + tag); + require(new ItemStack(Blocks.GOLD_BLOCK).is(TagKey.create(Registries.ITEM, id(tag))), "Lost third-party item cobblestone " + tag); + } + for (String name : List.of("nitrate", "phosphorous", "sulfur")) { + require(block("mineralogy:" + name + "_ore").defaultBlockState().is(blockTag("forge:ores")), "Ore aggregate " + name); + require(new ItemStack(block("mineralogy:" + name + "_ore")).is(TagKey.create(Registries.ITEM, id("forge:ores"))), "Item ore aggregate " + name); + } + for (String excluded : List.of("mineralogy:basalt_brick", "mineralogy:basalt_smooth", "minecraft:sandstone")) + if (registered(excluded)) + require(!block(excluded).defaultBlockState().is(blockTag("mineralogy:raw_stones")), "Crafted/sandstone common stone " + excluded); + evidence.add(phase + ": " + checked + " registered direct block/item classifications; recursive ore/storage aggregates and normal/root cobblestone option=" + enabled); + } + private void verifyGoatsAndCats(ServerLevel level, String phase) throws Exception { + BlockPos pos = new BlockPos(768, 201, 192); + level.getChunk(pos); + net.minecraft.world.level.LevelAccessor view = (net.minecraft.world.level.LevelAccessor)Proxy.newProxyInstance( + net.minecraft.world.level.LevelAccessor.class.getClassLoader(), new Class[] {net.minecraft.world.level.LevelAccessor.class}, + (proxy, method, args) -> method.getName().equals("getRawBrightness") ? 15 : method.invoke(level, args)); + Set terrain = raw(); + for (String name : List.of("andesite", "basalt", "diorite", "granite", "sandstone", "tuff")) terrain.add("minecraft:" + name); + terrain.add("minecraft:stone"); + for (String name : terrain) { + level.setBlock(pos.below(), block(name).defaultBlockState(), 2); + require(net.minecraft.world.entity.animal.goat.Goat.checkGoatSpawnRules(net.minecraft.world.entity.EntityType.GOAT, view, + net.minecraft.world.entity.MobSpawnType.NATURAL, pos, RandomSource.create(17)), "Native goat spawn " + name); + } + var behavior = new net.minecraft.world.entity.ai.behavior.RamTarget(goat -> net.minecraft.util.valueproviders.UniformInt.of(1, 2), + net.minecraft.world.entity.ai.targeting.TargetingConditions.forCombat(), 1.0F, goat -> 1.0D, + goat -> net.minecraft.sounds.SoundEvents.GOAT_RAM_IMPACT, goat -> net.minecraft.sounds.SoundEvents.GOAT_HORN_BREAK); + int horns = 0; + Set hornControls = raw(); + for (String name : List.of("andesite", "basalt", "diorite", "granite", "tuff", "stone")) hornControls.add("minecraft:" + name); + if (registered("mineralogy:basalt_brick")) hornControls.add("mineralogy:basalt_brick"); + for (String name : hornControls) { + var goat = new net.minecraft.world.entity.animal.goat.Goat(net.minecraft.world.entity.EntityType.GOAT, level); + goat.setPos(pos.getX() + 0.5, pos.getY(), pos.getZ() + 0.5); + goat.setDeltaMovement(new net.minecraft.world.phys.Vec3(1, 0, 0)); + goat.getBrain().setMemory(net.minecraft.world.entity.ai.memory.MemoryModuleType.RAM_TARGET, goat.position().add(10, 0, 0)); + level.setBlock(pos.east(), block(name).defaultBlockState(), 2); + level.setBlock(pos.east().above(), Blocks.AIR.defaultBlockState(), 2); + boolean expected = !List.of("mineralogy:rock_salt", "mineralogy:scoria", "mineralogy:siltstone", "mineralogy:chalk", "mineralogy:gypsum", "mineralogy:pumice", "mineralogy:basalt_brick").contains(name); + require((Boolean)call(behavior, "hasRammedHornBreakingBlock", level, goat) == expected, "Native horn collision " + name); + call(behavior, "tick", level, goat, 1L); + boolean dropped = !goat.hasLeftHorn() || !goat.hasRightHorn(); + require(dropped == expected, "Actual horn loss " + name); + if (dropped) horns++; + goat.discard(); + } + var cat = new net.minecraft.world.entity.animal.Cat(net.minecraft.world.entity.EntityType.CAT, level); + var goal = new net.minecraft.world.entity.ai.goal.CatSitOnBlockGoal(cat, 1.0D); + List furnaces = new ArrayList<>(List.of("minecraft:furnace")); + for (String family : FAMILIES) for (String finish : List.of("", "_smooth", "_brick", "_smooth_brick")) { + furnaces.add("mineralogy:" + family + finish + "_furnace"); + furnaces.add("mineralogy:lit_" + family + finish + "_furnace"); + } + for (String name : furnaces) { + Block value = BuiltInRegistries.BLOCK.get(id(name)); + if (value == null || value == Blocks.AIR) continue; + level.setBlock(pos, value.defaultBlockState(), 2); + level.setBlock(pos.above(), Blocks.AIR.defaultBlockState(), 2); + require((Boolean)call(goal, "isValidTarget", level, pos) == false, "Cat lit-only targeting " + name); + } + level.setBlock(pos, Blocks.FURNACE.defaultBlockState().setValue(net.minecraft.world.level.block.FurnaceBlock.LIT, true), 2); + require((Boolean)call(goal, "isValidTarget", level, pos), "Cat vanilla lit-furnace control"); + evidence.add(phase + ": native goat spawn on 37 terrain rocks + stone; actual horn loss on " + horns + " hard/vanilla controls with soft/crafted negatives; native pre-26.3 cat targets unchanged (Mineralogy furnaces excluded)"); + } + private void verifyRootsAndForestRocks(ServerLevel level, String phase) throws Exception { + Object registry = call(level.registryAccess(), "lookupOrThrow", Registries.CONFIGURED_FEATURE); + Object roots = call(call(registry, "getOrThrow", ResourceKey.create(Registries.CONFIGURED_FEATURE, id("minecraft:rooted_azalea_tree"))), "value"); + Object forest = call(call(registry, "getOrThrow", ResourceKey.create(Registries.CONFIGURED_FEATURE, id("minecraft:forest_rock"))), "value"); + int index = 0; + for (String name : List.of("minecraft:stone", "mineralogy:basalt", "mineralogy:chalk", "mineralogy:basalt_brick")) { + if (!registered(name)) continue; + BlockPos pos = new BlockPos(index++ * 48, level.getMinBuildHeight() + 10, 384); + prepareRoom(level, pos, block(name), 8); + call(call(roots, "feature"), "placeRootedDirt", level, call(roots, "config"), RandomSource.create(17), pos.getX(), pos.getZ(), pos.mutable()); + boolean rootPlaced = count(level, pos, 8, Blocks.ROOTED_DIRT) > 0; + boolean expected = !name.endsWith("_brick"); + require(rootPlaced == expected, "Native azalea root placement " + name); + prepareRoom(level, pos, block(name), 8); + for (int y = level.getMinBuildHeight(); y < pos.getY(); y++) level.setBlock(new BlockPos(pos.getX(), y, pos.getZ()), block(name).defaultBlockState(), 2); + call(forest, "place", level, level.getChunkSource().getGenerator(), RandomSource.create(17), pos.above()); + int placed = count(level, pos, 8, Blocks.MOSSY_COBBLESTONE); + require((placed > 0) == expected, "Native forest-rock placement " + name); + require(!block(name).defaultBlockState().is(blockTag("minecraft:azalea_grows_on")), "Bare rock was made tree soil " + name); + evidence.add(phase + ": native root/forest-rock " + name + "=" + rootPlaced + "/" + placed); + } + } + private void verifyNarrowChecks(ServerLevel level, String phase, boolean fixed) throws Exception { + Object featureRegistry = call(level.registryAccess(), "lookupOrThrow", Registries.CONFIGURED_FEATURE); + Object cluster = call(call(featureRegistry, "getOrThrow", ResourceKey.create(Registries.CONFIGURED_FEATURE, id("minecraft:dripstone_cluster"))), "value"); + cluster = call(cluster, "feature"); + BlockPos center = new BlockPos(512, 200, 256); + prepareRoom(level, center, Blocks.STONE, 12); + for (String name : List.of("minecraft:stone", "mineralogy:basalt", "mineralogy:chalk", "mineralogy:basalt_brick")) { + if (!registered(name)) continue; + level.setBlock(center, block(name).defaultBlockState(), 2); + boolean accepted = (Boolean)call(cluster, "canBeAdjacentToWater", level, center); + evidence.add(phase + ": native water-pocket adjacency " + name + "=" + accepted); + require(accepted == (name.equals("minecraft:stone") || fixed && !name.endsWith("_brick")), "Water-pocket native control " + name); + } + // Exercise the private column walker directly: air, a rock barrier, then + // air again. A column must stop at natural rock, but not at crafted brick. + Class columnType = Class.forName("net.minecraft.world.level.levelgen.feature.LargeDripstoneFeature$LargeDripstone"); + Class windType = Class.forName("net.minecraft.world.level.levelgen.feature.LargeDripstoneFeature$WindOffsetter"); + Constructor columnConstructor = columnType.getDeclaredConstructor(BlockPos.class, boolean.class, int.class, double.class, double.class); + columnConstructor.setAccessible(true); + Object wind = callStatic(windType, "noWind"); + for (String name : List.of("minecraft:stone", "mineralogy:basalt", "mineralogy:basalt_brick")) { + if (!registered(name)) continue; + prepareRoom(level, center, Blocks.STONE, 12); + for (int y = -8; y <= 0; y++) level.setBlock(center.offset(0, y, 0), (y == -2 ? block(name) : Blocks.AIR).defaultBlockState(), 2); + Object column = columnConstructor.newInstance(center, false, 2, 0.5, 5.0); + call(column, "placeBlocks", level, RandomSource.create(17), wind); + boolean stopped = level.getBlockState(center.below(3)).isAir(); + evidence.add(phase + ": native large-column stop " + name + "=" + stopped); + require(stopped == (name.equals("minecraft:stone") || fixed && !name.endsWith("_brick")), "Large-column native control " + name); + } + net.minecraft.world.level.block.WallBlock wall = (net.minecraft.world.level.block.WallBlock)Blocks.COBBLESTONE_WALL; + var straight = wall.defaultBlockState().setValue(net.minecraft.world.level.block.WallBlock.NORTH_WALL, net.minecraft.world.level.block.state.properties.WallSide.LOW) + .setValue(net.minecraft.world.level.block.WallBlock.SOUTH_WALL, net.minecraft.world.level.block.state.properties.WallSide.LOW); + for (String name : List.of("minecraft:torch", "mineralogy:rocksaltlamp")) { + var top = block(name).defaultBlockState(); + Method topUpdate = wall.getClass().getDeclaredMethod("topUpdate", net.minecraft.world.level.LevelReader.class, + net.minecraft.world.level.block.state.BlockState.class, BlockPos.class, net.minecraft.world.level.block.state.BlockState.class); + topUpdate.setAccessible(true); + var result = (net.minecraft.world.level.block.state.BlockState)topUpdate.invoke(wall, level, straight, center.above(), top); + boolean post = result.getValue(net.minecraft.world.level.block.WallBlock.UP); + evidence.add(phase + ": native straight-wall post under " + name + "=" + post); + require(post == (name.equals("minecraft:torch") || fixed), "Straight-wall torch control " + name); + var junction = straight.setValue(net.minecraft.world.level.block.WallBlock.EAST_WALL, net.minecraft.world.level.block.state.properties.WallSide.LOW); + result = (net.minecraft.world.level.block.state.BlockState)topUpdate.invoke(wall, level, junction, center.above(), top); + require(result.getValue(net.minecraft.world.level.block.WallBlock.UP), "Junction-wall post " + name); + } } private static ResourceLocation id(String value) { return ResourceLocation.parse(value); } private static Block block(String value) { @@ -61,6 +294,10 @@ private static Block block(String value) { require(result != null && result != Blocks.AIR, "Missing block " + value); return result; } + private static boolean registered(String value) { + Block valueBlock = BuiltInRegistries.BLOCK.get(id(value)); + return valueBlock != null && valueBlock != Blocks.AIR; + } private static TagKey blockTag(String name) { return TagKey.create(Registries.BLOCK, id(name)); } private static Set raw() { Set set = new TreeSet<>(); @@ -85,7 +322,16 @@ private void verifyTags(String phase) { require(Blocks.GOLD_BLOCK.defaultBlockState().is(blockTag("minecraft:" + tag)), "Lost third-party member " + tag); } for (String excluded : List.of("basalt_brick", "basalt_smooth", "basalt_slab", "basalt_furnace", "sulfur_ore", "sulfur_block", "rocksaltlamp", "rocksaltstreetlamp")) + if (registered("mineralogy:" + excluded)) require(!block("mineralogy:" + excluded).defaultBlockState().is(terrainTag), "Crafted/non-terrain member " + excluded); + boolean constructionDisabled = Boolean.getBoolean("mineralogy.compatProbe.constructionDisabled"); + String[] mining = {"mineable/pickaxe", "needs_iron_tool", "needs_stone_tool"}; + int[] totals = constructionDisabled ? new int[]{53, 3, 9} : new int[]{1133, 123, 329}; + for (int index = 0; index < mining.length; index++) { + long total = java.util.stream.StreamSupport.stream(BuiltInRegistries.BLOCK.getTagOrEmpty(blockTag("minecraft:" + mining[index])).spliterator(), false) + .filter(holder -> BuiltInRegistries.BLOCK.getKey(holder.value()).getNamespace().equals("mineralogy")).count(); + require(total == totals[index], "Loaded mining total " + mining[index] + "=" + total); + } evidence.add(phase + ": 37 block/item terrain identities; all five vanilla consumers; vanilla and third-party members retained"); } private void verifyCatalysts(ServerLevel level, String phase) throws Exception { @@ -132,6 +378,7 @@ private void verifyFeatures(ServerLevel level, String phase) throws Exception { Object configured = call(holder, "value"); int index = 0; for (String substrate : List.of("minecraft:stone", "mineralogy:basalt", "minecraft:basalt", "mineralogy:rhyolite", "mineralogy:chalk", "mineralogy:chert", "mineralogy:gypsum", "mineralogy:pumice", "mineralogy:basalt_brick")) { + if (!registered(substrate)) continue; BlockPos center = new BlockPos(index++ * 32, 200, 64); int placed = 0; for (long seed : new long[] { 3, 17, 81, 109, 531 }) { @@ -162,19 +409,21 @@ private static int count(ServerLevel level, BlockPos center, int radius, Block b } private void sampleCaves(ServerLevel level) { Map counts = new TreeMap<>(); - for (int x = -1; x <= 1; x++) for (int z = -1; z <= 1; z++) level.getChunk(x, z); - for (BlockPos pos : BlockPos.betweenClosed(new BlockPos(-16, -64, -16), new BlockPos(31, 80, 31))) { + for (int x = -4; x <= 4; x++) for (int z = -4; z <= 4; z++) level.getChunk(x, z); + for (BlockPos pos : BlockPos.betweenClosed(new BlockPos(-64, -64, -64), new BlockPos(79, 80, 79))) { String name = BuiltInRegistries.BLOCK.getKey(level.getBlockState(pos).getBlock()).toString(); - if (name.startsWith("mineralogy:") || name.contains("dripstone") || name.contains("moss") || name.contains("cave_vines")) + if (name.startsWith("mineralogy:") || name.contains("dripstone") || name.contains("moss") || name.contains("cave_vines") + || name.equals("minecraft:air") || name.equals("minecraft:cave_air")) counts.merge(name, 1L, Long::sum); } - evidence.add("Paired fresh cave sample: nine chunks; seed -4965128775892001975; y=-64..80"); + evidence.add("Paired fresh cave sample: 81 chunks; seed -4965128775892001975; y=-64..80"); counts.forEach((name, count) -> evidence.add(name + "=" + count)); } private static final class ClientSmoke { private static int ticks; private static int waiting; private static String lastScreen; + private static Object confirmedBackup; private static void register() { net.minecraftforge.common.MinecraftForge.EVENT_BUS.addListener((net.minecraftforge.event.TickEvent.ClientTickEvent.Post event) -> tick()); } private static void tick() { net.minecraft.client.Minecraft client = net.minecraft.client.Minecraft.getInstance(); @@ -183,10 +432,11 @@ private static void tick() { lastScreen = screen.getClass().getName(); System.out.println("COMPAT_CLIENT_SCREEN " + lastScreen); } - if (screen instanceof net.minecraft.client.gui.screens.BackupConfirmScreen backup) { + if (screen instanceof net.minecraft.client.gui.screens.BackupConfirmScreen backup && screen != confirmedBackup) { // The copied disposable world is the only accepted target. Never // auto-confirm a user world or unrelated dialog. try { + confirmedBackup = screen; net.minecraft.client.gui.screens.BackupConfirmScreen.Listener listener = (net.minecraft.client.gui.screens.BackupConfirmScreen.Listener)field(backup, "onProceed"); listener.proceed(false, false); @@ -229,7 +479,7 @@ private static Object construct(Class type, Object... args) throws Exception private static Object call(Object target, String name, Object... args) throws Exception { return invoke(target.getClass(), target, name, args); } private static Object invoke(Class type, Object target, String name, Object[] args) throws Exception { // Search public inherited methods first, then protected native pickup paths. - for (Method method : type.getMethods()) if (method.getName().equals(name) && matches(method.getParameterTypes(), args)) { method.setAccessible(true); return method.invoke(target, args); } + for (Method method : type.getMethods()) if (method.getName().equals(name) && matches(method.getParameterTypes(), args)) return method.invoke(target, args); for (Class cursor = type; cursor != null; cursor = cursor.getSuperclass()) for (Method method : cursor.getDeclaredMethods()) if (method.getName().equals(name) && matches(method.getParameterTypes(), args)) { method.setAccessible(true); return method.invoke(target, args); } throw new NoSuchMethodException(type.getName() + "." + name + Arrays.toString(args)); @@ -241,6 +491,8 @@ private static boolean matches(Class[] params, Object[] args) { if (type == boolean.class) type = Boolean.class; if (type == int.class) type = Integer.class; if (type == double.class) type = Double.class; + if (type == float.class) type = Float.class; + if (type == long.class) type = Long.class; if (args[index] != null && !type.isInstance(args[index])) return false; } return true; diff --git a/src/terrainCompatibilityTest/resources/data/forge/tags/blocks/cobblestone.json b/src/terrainCompatibilityTest/resources/data/forge/tags/blocks/cobblestone.json new file mode 100644 index 000000000..3d000f50f --- /dev/null +++ b/src/terrainCompatibilityTest/resources/data/forge/tags/blocks/cobblestone.json @@ -0,0 +1 @@ +{"replace":false,"values":["minecraft:gold_block"]} diff --git a/src/terrainCompatibilityTest/resources/data/forge/tags/blocks/cobblestone/normal.json b/src/terrainCompatibilityTest/resources/data/forge/tags/blocks/cobblestone/normal.json new file mode 100644 index 000000000..3d000f50f --- /dev/null +++ b/src/terrainCompatibilityTest/resources/data/forge/tags/blocks/cobblestone/normal.json @@ -0,0 +1 @@ +{"replace":false,"values":["minecraft:gold_block"]} diff --git a/src/terrainCompatibilityTest/resources/data/forge/tags/items/cobblestone.json b/src/terrainCompatibilityTest/resources/data/forge/tags/items/cobblestone.json new file mode 100644 index 000000000..3d000f50f --- /dev/null +++ b/src/terrainCompatibilityTest/resources/data/forge/tags/items/cobblestone.json @@ -0,0 +1 @@ +{"replace":false,"values":["minecraft:gold_block"]} diff --git a/src/terrainCompatibilityTest/resources/data/forge/tags/items/cobblestone/normal.json b/src/terrainCompatibilityTest/resources/data/forge/tags/items/cobblestone/normal.json new file mode 100644 index 000000000..3d000f50f --- /dev/null +++ b/src/terrainCompatibilityTest/resources/data/forge/tags/items/cobblestone/normal.json @@ -0,0 +1 @@ +{"replace":false,"values":["minecraft:gold_block"]} diff --git a/src/test/java/zone/moddev/mc/mineralogy/DripstoneHookContractTest.java b/src/test/java/zone/moddev/mc/mineralogy/DripstoneHookContractTest.java new file mode 100644 index 000000000..09ac30eaa --- /dev/null +++ b/src/test/java/zone/moddev/mc/mineralogy/DripstoneHookContractTest.java @@ -0,0 +1,25 @@ +package zone.moddev.mc.mineralogy; + +import java.nio.charset.StandardCharsets; +import java.nio.file.*; +import org.junit.Test; +import static org.junit.Assert.*; + +/** Packaged native controls independently prove both transformed call sites. */ +public class DripstoneHookContractTest { + @Test public void onlyTheTwoProvenNativeChecksHaveExactCountGuards() throws Exception { + String hook = Files.readString(Paths.get("src/main/resources/coremods/mineralogy_terrain_compatibility.js"), StandardCharsets.UTF_8); + assertTrue(hook.contains("if (hooks !== 1) throw new Error")); + assertTrue(hook.contains("DripstoneClusterFeature")); + assertTrue(hook.contains("LargeDripstoneFeature$LargeDripstone")); + assertTrue(hook.contains("instruction.owner === 'net/minecraft/tags/BlockTags'")); + assertTrue(hook.contains("instruction.name === 'BASE_STONE_OVERWORLD'")); + assertTrue(hook.contains("method.desc !== descriptor")); + assertEquals(2, hook.split("'type': 'CLASS'", -1).length - 1); + assertFalse(hook.contains("ore_replaceables")); + assertFalse(Files.exists(Paths.get("src/main/resources/data/minecraft/tags/blocks/base_stone_overworld.json"))); + String bridge = Files.readString(Paths.get("src/main/java/zone/moddev/mc/mineralogy/compat/VanillaTerrainHooks.java")); + assertTrue(bridge.contains("private static final TagKey")); + assertTrue(bridge.contains("return DRIPSTONE_BASE_STONES;")); + } +} diff --git a/src/test/java/zone/moddev/mc/mineralogy/ResourceContractTest.java b/src/test/java/zone/moddev/mc/mineralogy/ResourceContractTest.java index 228233cb1..3eedb6119 100644 --- a/src/test/java/zone/moddev/mc/mineralogy/ResourceContractTest.java +++ b/src/test/java/zone/moddev/mc/mineralogy/ResourceContractTest.java @@ -678,7 +678,9 @@ private static void assertTagValues(File file, String... expected) throws Except JsonArray values = json(file).getAsJsonArray("values"); assertEquals(file.getPath(), expected.length, values.size()); for (int index = 0; index < expected.length; index++) { - assertEquals(file.getPath(), expected[index], values.get(index).getAsString()); + JsonElement value = values.get(index); + assertEquals(file.getPath(), expected[index], value.isJsonObject() + ? value.getAsJsonObject().get("id").getAsString() : value.getAsString()); } } diff --git a/src/test/java/zone/moddev/mc/mineralogy/TagCompatibilityContractTest.java b/src/test/java/zone/moddev/mc/mineralogy/TagCompatibilityContractTest.java new file mode 100644 index 000000000..2448aa26c --- /dev/null +++ b/src/test/java/zone/moddev/mc/mineralogy/TagCompatibilityContractTest.java @@ -0,0 +1,119 @@ +package zone.moddev.mc.mineralogy; + +import com.google.gson.*; +import org.junit.Test; +import java.nio.charset.StandardCharsets; +import java.nio.file.*; +import java.util.*; +import static org.junit.Assert.*; + +/** The focused, shipping contract is separate from the local full tag index. */ +public class TagCompatibilityContractTest { + private static final Path DATA = Paths.get("src/main/resources/data"); + private static JsonObject read(Path file) throws Exception { + return JsonParser.parseString(new String(Files.readAllBytes(file), StandardCharsets.UTF_8)).getAsJsonObject(); + } + private static Set ids(JsonObject tag) { + Set result = new TreeSet<>(); + assertFalse("Unsupported optional array", tag.has("optional")); + for (JsonElement value : tag.getAsJsonArray("values")) { + String id; + if (value.isJsonObject()) { + JsonObject object = value.getAsJsonObject(); + assertEquals(new HashSet<>(Arrays.asList("id", "required")), object.keySet()); + assertFalse(object.get("required").getAsBoolean()); + id = object.get("id").getAsString(); + } else { id = value.getAsString(); } + assertTrue(id, id.matches("#?[a-z0-9_.-]+:[a-z0-9_/.-]+")); + if (id.matches("mineralogy:(lit_)?(.+)(_smooth|_brick|_slab|_stairs|_wall|_furnace|_relief_.+)")) + assertTrue("Required config-dependent construction entry " + id, value.isJsonObject()); + assertTrue("Duplicate " + id, result.add(id)); + } + return result; + } + @Test public void generatedContractsMatchAndEveryTagHasValidMembers() throws Exception { + JsonObject contracts = read(Paths.get("src/test/resources/tag-compatibility-contract.json")); + for (Map.Entry contract : contracts.getAsJsonObject("tags").entrySet()) { + JsonObject actual = read(DATA.resolve(contract.getKey())); + assertEquals(contract.getKey(), contract.getValue(), actual.get("values")); + assertFalse(actual.get("replace").getAsBoolean()); + for (String id : ids(actual)) if (id.startsWith("mineralogy:")) { + String asset = contract.getKey().contains("/tags/blocks/") ? "blockstates/" : "models/item/"; + assertTrue("Nonexistent registry form " + contract.getKey() + " " + id, + Files.exists(Paths.get("src/main/resources/assets/mineralogy/" + asset + id.substring(11) + ".json"))); + } + } + try (java.util.stream.Stream paths = Files.walk(DATA)) { + for (Path path : (Iterable)paths.filter(p -> p.toString().contains("tags") && p.toString().endsWith(".json"))::iterator) + ids(read(path)); + } + } + @Test public void shapesExcludeDoubleFullBlocksAndRemainOptional() throws Exception { + for (String kind : Arrays.asList("blocks", "items")) for (String shape : Arrays.asList("slabs", "stairs", "walls")) { + JsonObject tag = read(DATA.resolve("minecraft/tags/" + kind + "/" + shape + ".json")); + Set members = ids(tag); + assertEquals(108, members.size()); + assertTrue(members.stream().noneMatch(id -> id.contains("double_slab"))); + assertTrue(tag.getAsJsonArray("values").asList().stream().allMatch(JsonElement::isJsonObject)); + } + } + @Test public void naturalRawAndHornPoliciesExcludeSoftAndCraftedForms() throws Exception { + Set raw = ids(read(DATA.resolve("mineralogy/tags/blocks/raw_stones.json"))); + assertEquals(36, raw.size()); + assertFalse(raw.contains("minecraft:sandstone")); + assertFalse(raw.stream().anyMatch(id -> id.endsWith("_smooth") || id.endsWith("_brick"))); + Set horns = ids(read(DATA.resolve("mineralogy/tags/blocks/horn_breaking_rocks.json"))); + assertEquals(30, horns.size()); + assertTrue(horns.contains("mineralogy:chert")); + for (String excluded : Arrays.asList("rock_salt", "scoria", "siltstone", "chalk", "gypsum", "pumice", "basalt_brick")) + assertFalse(horns.contains("mineralogy:" + excluded)); + assertFalse(Files.exists(DATA.resolve("minecraft/tags/blocks/base_stone_overworld.json"))); + assertFalse(Files.exists(DATA.resolve("minecraft/tags/blocks/azalea_grows_on.json"))); + assertFalse(Files.exists(DATA.resolve("minecraft/tags/blocks/height_specific_ore_replaceables.json"))); + } + @Test public void unavailableWorkstationAndCatTagsAreNotInvented() throws Exception { + assertFalse(Files.exists(DATA.resolve("c/tags/blocks/player_workstations/furnaces.json"))); + assertFalse(Files.exists(DATA.resolve("minecraft/tags/blocks/cats_can_sit_on.json"))); + } + @Test public void commonAggregatesRetainTheirDedicatedChildTags() throws Exception { + for (String kind : Arrays.asList("blocks", "items")) { + assertEquals(new TreeSet<>(Arrays.asList("#forge:ores/nitrate", "#forge:ores/phosphorous", "#forge:ores/sulfur")), + ids(read(DATA.resolve("forge/tags/" + kind + "/ores.json")))); + assertEquals(new TreeSet<>(Arrays.asList("#forge:storage_blocks/chalk", "#forge:storage_blocks/gypsum", + "#forge:storage_blocks/nitrate", "#forge:storage_blocks/phosphorous", "#forge:storage_blocks/rock_salt", "#forge:storage_blocks/sulfur")), + ids(read(DATA.resolve("forge/tags/" + kind + "/storage_blocks.json")))); + assertFalse(Files.exists(DATA.resolve("forge/tags/" + kind + "/dyed.json"))); + } + } + @Test public void miningTotalsAndNormalCobblestoneRemainExact() throws Exception { + assertEquals(1133, ids(read(DATA.resolve("minecraft/tags/blocks/mineable/pickaxe.json"))).size()); + assertEquals(123, ids(read(DATA.resolve("minecraft/tags/blocks/needs_iron_tool.json"))).size()); + assertEquals(329, ids(read(DATA.resolve("minecraft/tags/blocks/needs_stone_tool.json"))).size()); + for (String kind : Arrays.asList("blocks", "items")) + assertEquals(new TreeSet<>(Arrays.asList("mineralogy:chert", "mineralogy:pumice")), + ids(read(DATA.resolve("forge/tags/" + kind + "/cobblestone/normal.json")))); + } + @Test public void disabledConstructionDoesNotLeaveRequiredLootItemReferences() throws Exception { + int guarded = 0; + try (java.util.stream.Stream paths = Files.list(DATA.resolve("mineralogy/loot_tables/blocks"))) { + for (Path path : (Iterable)paths::iterator) { + JsonObject loot = read(path); + for (JsonElement pool : loot.getAsJsonArray("pools")) { + for (JsonElement entry : pool.getAsJsonObject().getAsJsonArray("entries")) { + JsonObject value = entry.getAsJsonObject(); + if (!"minecraft:item".equals(value.get("type").getAsString())) continue; + String id = value.get("name").getAsString(); + if (!id.matches("mineralogy:(.+)(_smooth|_brick|_slab|_stairs|_wall|_furnace|_relief_.+)")) continue; + assertFalse(path.toString(), loot.has("forge:condition")); + assertTrue(path.toString(), pool.getAsJsonObject().has("forge:condition")); + JsonObject condition = pool.getAsJsonObject().getAsJsonObject("forge:condition"); + assertEquals("forge:item_exists", condition.get("type").getAsString()); + assertEquals(id, condition.get("item").getAsString()); + guarded++; + } + } + } + } + assertEquals(864, guarded); + } +} diff --git a/src/test/java/zone/moddev/mc/mineralogy/TerrainCompatibilityContractTest.java b/src/test/java/zone/moddev/mc/mineralogy/TerrainCompatibilityContractTest.java index 1748214b2..5bf8f708a 100644 --- a/src/test/java/zone/moddev/mc/mineralogy/TerrainCompatibilityContractTest.java +++ b/src/test/java/zone/moddev/mc/mineralogy/TerrainCompatibilityContractTest.java @@ -62,6 +62,13 @@ private Set raw() { assertEquals(expected, members(json("mineralogy/tags/" + kind("block") + "/terrain_rocks.json"), false)); assertEquals(expected, members(json("mineralogy/tags/" + kind("item") + "/terrain_rocks.json"), false)); } + @Test public void batSpawningUsesOnlyTheAdditiveBlockTerrainInterface() throws Exception { + assertFalse(Files.exists(ROOT.resolve("minecraft/tags/" + kind("block") + "/bats_spawnable_on.json"))); + assertFalse(Files.exists(ROOT.resolve("minecraft/tags/" + kind("item") + "/bats_spawnable_on.json"))); + assertFalse(Files.exists(ROOT.resolve("minecraft/tags/blocks/bats_spawnable_on.json"))); + // Do not broaden base_stone_overworld: it has unrelated worldgen consumers. + assertFalse(Files.exists(ROOT.resolve("minecraft/tags/" + kind("block") + "/base_stone_overworld.json"))); + } @Test public void naturalReplacementIsAdditiveAndNotConfigConditional() throws Exception { for (String name : Arrays.asList("sculk_replaceable", "dripstone_replaceable_blocks", "moss_replaceable")) assertEquals(Collections.singleton("#mineralogy:terrain_rocks"), members(json("minecraft/tags/" + kind("block") + "/" + name + ".json"), false)); @@ -69,28 +76,22 @@ private Set raw() { assertFalse(Files.exists(ROOT.resolve("minecraft/tags/" + kind("block") + "/sculk_replaceable_world_gen.json"))); assertFalse(Files.exists(ROOT.resolve("minecraft/tags/" + kind("block") + "/lush_ground_replaceable.json"))); } - @Test public void sulfurCubeMembershipIsOnlySupportedFullRockItems() throws Exception { + @Test public void sulfurCubeMembershipIsOnlyRawRockItems() throws Exception { boolean cubes = Arrays.asList("26.2", "26.3").contains(minecraft()); Path stones = ROOT.resolve("mineralogy/tags/" + kind("item") + "/sulfur_cube_stones.json"); Path archetype = ROOT.resolve("minecraft/tags/" + kind("item") + "/sulfur_cube_archetype/slow_bouncy.json"); if (!cubes) { assertFalse(Files.exists(stones)); assertFalse(Files.exists(archetype)); return; } Set expected = raw(); - for (String suffix : Arrays.asList("_smooth", "_brick", "_smooth_brick")) - for (String family : FAMILIES) expected.add("mineralogy:" + family + suffix); JsonObject tag = json("mineralogy/tags/" + kind("item") + "/sulfur_cube_stones.json"); - assertEquals(112, expected.size()); - assertEquals(expected, members(tag, true)); + assertEquals(31, expected.size()); + assertEquals(expected, members(tag, false)); for (String id : expected) { String name = id.substring("mineralogy:".length()); assertTrue("Nonexistent block identity: " + id, Files.exists(Paths.get("src/main/resources/assets/mineralogy/blockstates/" + name + ".json"))); assertTrue("Nonexistent item identity: " + id, Files.exists(Paths.get("src/main/resources/assets/mineralogy/models/item/" + name + ".json"))); } - int optional = 0; - for (JsonElement value : tag.getAsJsonArray("values")) { - if (value.isJsonObject()) { optional++; assertFalse(raw().contains(value.getAsJsonObject().get("id").getAsString())); } - else assertTrue(raw().contains(value.getAsString())); - } - assertEquals(81, optional); + for (String suffix : Arrays.asList("_smooth", "_brick", "_smooth_brick", "_slab", "_stairs", "_wall", "_furnace")) + for (String family : FAMILIES) assertFalse(expected.contains("mineralogy:" + family + suffix)); assertEquals(Collections.singleton("#mineralogy:sulfur_cube_stones"), members(json("minecraft/tags/" + kind("item") + "/sulfur_cube_archetype/slow_bouncy.json"), false)); } @Test public void noWrongEraTagDirectoriesOrSulfurCubeResources() throws Exception { diff --git a/src/test/resources/tag-compatibility-contract.json b/src/test/resources/tag-compatibility-contract.json new file mode 100644 index 000000000..ec151a1c6 --- /dev/null +++ b/src/test/resources/tag-compatibility-contract.json @@ -0,0 +1,2860 @@ +{ + "minecraft": "1.20.6", + "tags": { + "mineralogy/tags/blocks/terrain_rocks.json": [ + "minecraft:andesite", + "minecraft:basalt", + "minecraft:diorite", + "minecraft:granite", + "minecraft:sandstone", + "minecraft:tuff", + "mineralogy:amphibolite", + "mineralogy:andesite", + "mineralogy:basalt", + "mineralogy:basaltic_glass", + "mineralogy:chalk", + "mineralogy:chert", + "mineralogy:conglomerate", + "mineralogy:diabase", + "mineralogy:diorite", + "mineralogy:dolomite", + "mineralogy:gabbro", + "mineralogy:gneiss", + "mineralogy:granite", + "mineralogy:gypsum", + "mineralogy:hornfels", + "mineralogy:limestone", + "mineralogy:marble", + "mineralogy:novaculite", + "mineralogy:pegmatite", + "mineralogy:peridotite", + "mineralogy:phyllite", + "mineralogy:pumice", + "mineralogy:quartzite", + "mineralogy:rhyolite", + "mineralogy:rock_salt", + "mineralogy:schist", + "mineralogy:scoria", + "mineralogy:shale", + "mineralogy:siltstone", + "mineralogy:slate", + "mineralogy:tuff" + ], + "mineralogy/tags/items/terrain_rocks.json": [ + "minecraft:andesite", + "minecraft:basalt", + "minecraft:diorite", + "minecraft:granite", + "minecraft:sandstone", + "minecraft:tuff", + "mineralogy:amphibolite", + "mineralogy:andesite", + "mineralogy:basalt", + "mineralogy:basaltic_glass", + "mineralogy:chalk", + "mineralogy:chert", + "mineralogy:conglomerate", + "mineralogy:diabase", + "mineralogy:diorite", + "mineralogy:dolomite", + "mineralogy:gabbro", + "mineralogy:gneiss", + "mineralogy:granite", + "mineralogy:gypsum", + "mineralogy:hornfels", + "mineralogy:limestone", + "mineralogy:marble", + "mineralogy:novaculite", + "mineralogy:pegmatite", + "mineralogy:peridotite", + "mineralogy:phyllite", + "mineralogy:pumice", + "mineralogy:quartzite", + "mineralogy:rhyolite", + "mineralogy:rock_salt", + "mineralogy:schist", + "mineralogy:scoria", + "mineralogy:shale", + "mineralogy:siltstone", + "mineralogy:slate", + "mineralogy:tuff" + ], + "minecraft/tags/blocks/dripstone_replaceable_blocks.json": [ + "#mineralogy:terrain_rocks" + ], + "minecraft/tags/blocks/moss_replaceable.json": [ + "#mineralogy:terrain_rocks" + ], + "minecraft/tags/blocks/azalea_root_replaceable.json": [ + "#mineralogy:terrain_rocks" + ], + "minecraft/tags/blocks/sculk_replaceable.json": [ + "#mineralogy:terrain_rocks" + ], + "minecraft/tags/blocks/goats_spawnable_on.json": [ + "#mineralogy:terrain_rocks" + ], + "mineralogy/tags/blocks/horn_breaking_rocks.json": [ + "minecraft:andesite", + "minecraft:basalt", + "minecraft:diorite", + "minecraft:granite", + "minecraft:tuff", + "mineralogy:amphibolite", + "mineralogy:andesite", + "mineralogy:basalt", + "mineralogy:basaltic_glass", + "mineralogy:chert", + "mineralogy:conglomerate", + "mineralogy:diabase", + "mineralogy:diorite", + "mineralogy:dolomite", + "mineralogy:gabbro", + "mineralogy:gneiss", + "mineralogy:granite", + "mineralogy:hornfels", + "mineralogy:limestone", + "mineralogy:marble", + "mineralogy:novaculite", + "mineralogy:pegmatite", + "mineralogy:peridotite", + "mineralogy:phyllite", + "mineralogy:quartzite", + "mineralogy:rhyolite", + "mineralogy:schist", + "mineralogy:shale", + "mineralogy:slate", + "mineralogy:tuff" + ], + "minecraft/tags/blocks/snaps_goat_horn.json": [ + "#mineralogy:horn_breaking_rocks" + ], + "mineralogy/tags/blocks/raw_stones.json": [ + "minecraft:andesite", + "minecraft:basalt", + "minecraft:diorite", + "minecraft:granite", + "minecraft:tuff", + "mineralogy:amphibolite", + "mineralogy:andesite", + "mineralogy:basalt", + "mineralogy:basaltic_glass", + "mineralogy:chalk", + "mineralogy:chert", + "mineralogy:conglomerate", + "mineralogy:diabase", + "mineralogy:diorite", + "mineralogy:dolomite", + "mineralogy:gabbro", + "mineralogy:gneiss", + "mineralogy:granite", + "mineralogy:gypsum", + "mineralogy:hornfels", + "mineralogy:limestone", + "mineralogy:marble", + "mineralogy:novaculite", + "mineralogy:pegmatite", + "mineralogy:peridotite", + "mineralogy:phyllite", + "mineralogy:pumice", + "mineralogy:quartzite", + "mineralogy:rhyolite", + "mineralogy:rock_salt", + "mineralogy:schist", + "mineralogy:scoria", + "mineralogy:shale", + "mineralogy:siltstone", + "mineralogy:slate", + "mineralogy:tuff" + ], + "minecraft/tags/blocks/slabs.json": [ + { + "id": "mineralogy:andesite_slab", + "required": false + }, + { + "id": "mineralogy:andesite_smooth_slab", + "required": false + }, + { + "id": "mineralogy:andesite_brick_slab", + "required": false + }, + { + "id": "mineralogy:andesite_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:basalt_slab", + "required": false + }, + { + "id": "mineralogy:basalt_smooth_slab", + "required": false + }, + { + "id": "mineralogy:basalt_brick_slab", + "required": false + }, + { + "id": "mineralogy:basalt_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:diorite_slab", + "required": false + }, + { + "id": "mineralogy:diorite_smooth_slab", + "required": false + }, + { + "id": "mineralogy:diorite_brick_slab", + "required": false + }, + { + "id": "mineralogy:diorite_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:granite_slab", + "required": false + }, + { + "id": "mineralogy:granite_smooth_slab", + "required": false + }, + { + "id": "mineralogy:granite_brick_slab", + "required": false + }, + { + "id": "mineralogy:granite_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:rhyolite_slab", + "required": false + }, + { + "id": "mineralogy:rhyolite_smooth_slab", + "required": false + }, + { + "id": "mineralogy:rhyolite_brick_slab", + "required": false + }, + { + "id": "mineralogy:rhyolite_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:pegmatite_slab", + "required": false + }, + { + "id": "mineralogy:pegmatite_smooth_slab", + "required": false + }, + { + "id": "mineralogy:pegmatite_brick_slab", + "required": false + }, + { + "id": "mineralogy:pegmatite_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:diabase_slab", + "required": false + }, + { + "id": "mineralogy:diabase_smooth_slab", + "required": false + }, + { + "id": "mineralogy:diabase_brick_slab", + "required": false + }, + { + "id": "mineralogy:diabase_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:gabbro_slab", + "required": false + }, + { + "id": "mineralogy:gabbro_smooth_slab", + "required": false + }, + { + "id": "mineralogy:gabbro_brick_slab", + "required": false + }, + { + "id": "mineralogy:gabbro_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:peridotite_slab", + "required": false + }, + { + "id": "mineralogy:peridotite_smooth_slab", + "required": false + }, + { + "id": "mineralogy:peridotite_brick_slab", + "required": false + }, + { + "id": "mineralogy:peridotite_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:basaltic_glass_slab", + "required": false + }, + { + "id": "mineralogy:basaltic_glass_smooth_slab", + "required": false + }, + { + "id": "mineralogy:basaltic_glass_brick_slab", + "required": false + }, + { + "id": "mineralogy:basaltic_glass_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:scoria_slab", + "required": false + }, + { + "id": "mineralogy:scoria_smooth_slab", + "required": false + }, + { + "id": "mineralogy:scoria_brick_slab", + "required": false + }, + { + "id": "mineralogy:scoria_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:tuff_slab", + "required": false + }, + { + "id": "mineralogy:tuff_smooth_slab", + "required": false + }, + { + "id": "mineralogy:tuff_brick_slab", + "required": false + }, + { + "id": "mineralogy:tuff_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:shale_slab", + "required": false + }, + { + "id": "mineralogy:shale_smooth_slab", + "required": false + }, + { + "id": "mineralogy:shale_brick_slab", + "required": false + }, + { + "id": "mineralogy:shale_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:conglomerate_slab", + "required": false + }, + { + "id": "mineralogy:conglomerate_smooth_slab", + "required": false + }, + { + "id": "mineralogy:conglomerate_brick_slab", + "required": false + }, + { + "id": "mineralogy:conglomerate_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:dolomite_slab", + "required": false + }, + { + "id": "mineralogy:dolomite_smooth_slab", + "required": false + }, + { + "id": "mineralogy:dolomite_brick_slab", + "required": false + }, + { + "id": "mineralogy:dolomite_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:limestone_slab", + "required": false + }, + { + "id": "mineralogy:limestone_smooth_slab", + "required": false + }, + { + "id": "mineralogy:limestone_brick_slab", + "required": false + }, + { + "id": "mineralogy:limestone_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:siltstone_slab", + "required": false + }, + { + "id": "mineralogy:siltstone_smooth_slab", + "required": false + }, + { + "id": "mineralogy:siltstone_brick_slab", + "required": false + }, + { + "id": "mineralogy:siltstone_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:marble_slab", + "required": false + }, + { + "id": "mineralogy:marble_smooth_slab", + "required": false + }, + { + "id": "mineralogy:marble_brick_slab", + "required": false + }, + { + "id": "mineralogy:marble_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:slate_slab", + "required": false + }, + { + "id": "mineralogy:slate_smooth_slab", + "required": false + }, + { + "id": "mineralogy:slate_brick_slab", + "required": false + }, + { + "id": "mineralogy:slate_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:schist_slab", + "required": false + }, + { + "id": "mineralogy:schist_smooth_slab", + "required": false + }, + { + "id": "mineralogy:schist_brick_slab", + "required": false + }, + { + "id": "mineralogy:schist_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:gneiss_slab", + "required": false + }, + { + "id": "mineralogy:gneiss_smooth_slab", + "required": false + }, + { + "id": "mineralogy:gneiss_brick_slab", + "required": false + }, + { + "id": "mineralogy:gneiss_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:phyllite_slab", + "required": false + }, + { + "id": "mineralogy:phyllite_smooth_slab", + "required": false + }, + { + "id": "mineralogy:phyllite_brick_slab", + "required": false + }, + { + "id": "mineralogy:phyllite_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:amphibolite_slab", + "required": false + }, + { + "id": "mineralogy:amphibolite_smooth_slab", + "required": false + }, + { + "id": "mineralogy:amphibolite_brick_slab", + "required": false + }, + { + "id": "mineralogy:amphibolite_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:hornfels_slab", + "required": false + }, + { + "id": "mineralogy:hornfels_smooth_slab", + "required": false + }, + { + "id": "mineralogy:hornfels_brick_slab", + "required": false + }, + { + "id": "mineralogy:hornfels_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:quartzite_slab", + "required": false + }, + { + "id": "mineralogy:quartzite_smooth_slab", + "required": false + }, + { + "id": "mineralogy:quartzite_brick_slab", + "required": false + }, + { + "id": "mineralogy:quartzite_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:novaculite_slab", + "required": false + }, + { + "id": "mineralogy:novaculite_smooth_slab", + "required": false + }, + { + "id": "mineralogy:novaculite_brick_slab", + "required": false + }, + { + "id": "mineralogy:novaculite_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:rock_salt_slab", + "required": false + }, + { + "id": "mineralogy:rock_salt_smooth_slab", + "required": false + }, + { + "id": "mineralogy:rock_salt_brick_slab", + "required": false + }, + { + "id": "mineralogy:rock_salt_smooth_brick_slab", + "required": false + } + ], + "minecraft/tags/blocks/stairs.json": [ + { + "id": "mineralogy:andesite_stairs", + "required": false + }, + { + "id": "mineralogy:andesite_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:andesite_brick_stairs", + "required": false + }, + { + "id": "mineralogy:andesite_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:basalt_stairs", + "required": false + }, + { + "id": "mineralogy:basalt_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:basalt_brick_stairs", + "required": false + }, + { + "id": "mineralogy:basalt_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:diorite_stairs", + "required": false + }, + { + "id": "mineralogy:diorite_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:diorite_brick_stairs", + "required": false + }, + { + "id": "mineralogy:diorite_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:granite_stairs", + "required": false + }, + { + "id": "mineralogy:granite_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:granite_brick_stairs", + "required": false + }, + { + "id": "mineralogy:granite_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:rhyolite_stairs", + "required": false + }, + { + "id": "mineralogy:rhyolite_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:rhyolite_brick_stairs", + "required": false + }, + { + "id": "mineralogy:rhyolite_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:pegmatite_stairs", + "required": false + }, + { + "id": "mineralogy:pegmatite_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:pegmatite_brick_stairs", + "required": false + }, + { + "id": "mineralogy:pegmatite_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:diabase_stairs", + "required": false + }, + { + "id": "mineralogy:diabase_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:diabase_brick_stairs", + "required": false + }, + { + "id": "mineralogy:diabase_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:gabbro_stairs", + "required": false + }, + { + "id": "mineralogy:gabbro_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:gabbro_brick_stairs", + "required": false + }, + { + "id": "mineralogy:gabbro_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:peridotite_stairs", + "required": false + }, + { + "id": "mineralogy:peridotite_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:peridotite_brick_stairs", + "required": false + }, + { + "id": "mineralogy:peridotite_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:basaltic_glass_stairs", + "required": false + }, + { + "id": "mineralogy:basaltic_glass_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:basaltic_glass_brick_stairs", + "required": false + }, + { + "id": "mineralogy:basaltic_glass_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:scoria_stairs", + "required": false + }, + { + "id": "mineralogy:scoria_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:scoria_brick_stairs", + "required": false + }, + { + "id": "mineralogy:scoria_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:tuff_stairs", + "required": false + }, + { + "id": "mineralogy:tuff_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:tuff_brick_stairs", + "required": false + }, + { + "id": "mineralogy:tuff_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:shale_stairs", + "required": false + }, + { + "id": "mineralogy:shale_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:shale_brick_stairs", + "required": false + }, + { + "id": "mineralogy:shale_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:conglomerate_stairs", + "required": false + }, + { + "id": "mineralogy:conglomerate_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:conglomerate_brick_stairs", + "required": false + }, + { + "id": "mineralogy:conglomerate_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:dolomite_stairs", + "required": false + }, + { + "id": "mineralogy:dolomite_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:dolomite_brick_stairs", + "required": false + }, + { + "id": "mineralogy:dolomite_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:limestone_stairs", + "required": false + }, + { + "id": "mineralogy:limestone_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:limestone_brick_stairs", + "required": false + }, + { + "id": "mineralogy:limestone_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:siltstone_stairs", + "required": false + }, + { + "id": "mineralogy:siltstone_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:siltstone_brick_stairs", + "required": false + }, + { + "id": "mineralogy:siltstone_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:marble_stairs", + "required": false + }, + { + "id": "mineralogy:marble_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:marble_brick_stairs", + "required": false + }, + { + "id": "mineralogy:marble_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:slate_stairs", + "required": false + }, + { + "id": "mineralogy:slate_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:slate_brick_stairs", + "required": false + }, + { + "id": "mineralogy:slate_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:schist_stairs", + "required": false + }, + { + "id": "mineralogy:schist_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:schist_brick_stairs", + "required": false + }, + { + "id": "mineralogy:schist_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:gneiss_stairs", + "required": false + }, + { + "id": "mineralogy:gneiss_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:gneiss_brick_stairs", + "required": false + }, + { + "id": "mineralogy:gneiss_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:phyllite_stairs", + "required": false + }, + { + "id": "mineralogy:phyllite_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:phyllite_brick_stairs", + "required": false + }, + { + "id": "mineralogy:phyllite_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:amphibolite_stairs", + "required": false + }, + { + "id": "mineralogy:amphibolite_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:amphibolite_brick_stairs", + "required": false + }, + { + "id": "mineralogy:amphibolite_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:hornfels_stairs", + "required": false + }, + { + "id": "mineralogy:hornfels_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:hornfels_brick_stairs", + "required": false + }, + { + "id": "mineralogy:hornfels_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:quartzite_stairs", + "required": false + }, + { + "id": "mineralogy:quartzite_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:quartzite_brick_stairs", + "required": false + }, + { + "id": "mineralogy:quartzite_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:novaculite_stairs", + "required": false + }, + { + "id": "mineralogy:novaculite_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:novaculite_brick_stairs", + "required": false + }, + { + "id": "mineralogy:novaculite_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:rock_salt_stairs", + "required": false + }, + { + "id": "mineralogy:rock_salt_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:rock_salt_brick_stairs", + "required": false + }, + { + "id": "mineralogy:rock_salt_smooth_brick_stairs", + "required": false + } + ], + "minecraft/tags/blocks/walls.json": [ + { + "id": "mineralogy:andesite_wall", + "required": false + }, + { + "id": "mineralogy:andesite_smooth_wall", + "required": false + }, + { + "id": "mineralogy:andesite_brick_wall", + "required": false + }, + { + "id": "mineralogy:andesite_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:basalt_wall", + "required": false + }, + { + "id": "mineralogy:basalt_smooth_wall", + "required": false + }, + { + "id": "mineralogy:basalt_brick_wall", + "required": false + }, + { + "id": "mineralogy:basalt_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:diorite_wall", + "required": false + }, + { + "id": "mineralogy:diorite_smooth_wall", + "required": false + }, + { + "id": "mineralogy:diorite_brick_wall", + "required": false + }, + { + "id": "mineralogy:diorite_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:granite_wall", + "required": false + }, + { + "id": "mineralogy:granite_smooth_wall", + "required": false + }, + { + "id": "mineralogy:granite_brick_wall", + "required": false + }, + { + "id": "mineralogy:granite_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:rhyolite_wall", + "required": false + }, + { + "id": "mineralogy:rhyolite_smooth_wall", + "required": false + }, + { + "id": "mineralogy:rhyolite_brick_wall", + "required": false + }, + { + "id": "mineralogy:rhyolite_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:pegmatite_wall", + "required": false + }, + { + "id": "mineralogy:pegmatite_smooth_wall", + "required": false + }, + { + "id": "mineralogy:pegmatite_brick_wall", + "required": false + }, + { + "id": "mineralogy:pegmatite_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:diabase_wall", + "required": false + }, + { + "id": "mineralogy:diabase_smooth_wall", + "required": false + }, + { + "id": "mineralogy:diabase_brick_wall", + "required": false + }, + { + "id": "mineralogy:diabase_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:gabbro_wall", + "required": false + }, + { + "id": "mineralogy:gabbro_smooth_wall", + "required": false + }, + { + "id": "mineralogy:gabbro_brick_wall", + "required": false + }, + { + "id": "mineralogy:gabbro_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:peridotite_wall", + "required": false + }, + { + "id": "mineralogy:peridotite_smooth_wall", + "required": false + }, + { + "id": "mineralogy:peridotite_brick_wall", + "required": false + }, + { + "id": "mineralogy:peridotite_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:basaltic_glass_wall", + "required": false + }, + { + "id": "mineralogy:basaltic_glass_smooth_wall", + "required": false + }, + { + "id": "mineralogy:basaltic_glass_brick_wall", + "required": false + }, + { + "id": "mineralogy:basaltic_glass_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:scoria_wall", + "required": false + }, + { + "id": "mineralogy:scoria_smooth_wall", + "required": false + }, + { + "id": "mineralogy:scoria_brick_wall", + "required": false + }, + { + "id": "mineralogy:scoria_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:tuff_wall", + "required": false + }, + { + "id": "mineralogy:tuff_smooth_wall", + "required": false + }, + { + "id": "mineralogy:tuff_brick_wall", + "required": false + }, + { + "id": "mineralogy:tuff_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:shale_wall", + "required": false + }, + { + "id": "mineralogy:shale_smooth_wall", + "required": false + }, + { + "id": "mineralogy:shale_brick_wall", + "required": false + }, + { + "id": "mineralogy:shale_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:conglomerate_wall", + "required": false + }, + { + "id": "mineralogy:conglomerate_smooth_wall", + "required": false + }, + { + "id": "mineralogy:conglomerate_brick_wall", + "required": false + }, + { + "id": "mineralogy:conglomerate_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:dolomite_wall", + "required": false + }, + { + "id": "mineralogy:dolomite_smooth_wall", + "required": false + }, + { + "id": "mineralogy:dolomite_brick_wall", + "required": false + }, + { + "id": "mineralogy:dolomite_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:limestone_wall", + "required": false + }, + { + "id": "mineralogy:limestone_smooth_wall", + "required": false + }, + { + "id": "mineralogy:limestone_brick_wall", + "required": false + }, + { + "id": "mineralogy:limestone_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:siltstone_wall", + "required": false + }, + { + "id": "mineralogy:siltstone_smooth_wall", + "required": false + }, + { + "id": "mineralogy:siltstone_brick_wall", + "required": false + }, + { + "id": "mineralogy:siltstone_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:marble_wall", + "required": false + }, + { + "id": "mineralogy:marble_smooth_wall", + "required": false + }, + { + "id": "mineralogy:marble_brick_wall", + "required": false + }, + { + "id": "mineralogy:marble_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:slate_wall", + "required": false + }, + { + "id": "mineralogy:slate_smooth_wall", + "required": false + }, + { + "id": "mineralogy:slate_brick_wall", + "required": false + }, + { + "id": "mineralogy:slate_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:schist_wall", + "required": false + }, + { + "id": "mineralogy:schist_smooth_wall", + "required": false + }, + { + "id": "mineralogy:schist_brick_wall", + "required": false + }, + { + "id": "mineralogy:schist_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:gneiss_wall", + "required": false + }, + { + "id": "mineralogy:gneiss_smooth_wall", + "required": false + }, + { + "id": "mineralogy:gneiss_brick_wall", + "required": false + }, + { + "id": "mineralogy:gneiss_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:phyllite_wall", + "required": false + }, + { + "id": "mineralogy:phyllite_smooth_wall", + "required": false + }, + { + "id": "mineralogy:phyllite_brick_wall", + "required": false + }, + { + "id": "mineralogy:phyllite_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:amphibolite_wall", + "required": false + }, + { + "id": "mineralogy:amphibolite_smooth_wall", + "required": false + }, + { + "id": "mineralogy:amphibolite_brick_wall", + "required": false + }, + { + "id": "mineralogy:amphibolite_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:hornfels_wall", + "required": false + }, + { + "id": "mineralogy:hornfels_smooth_wall", + "required": false + }, + { + "id": "mineralogy:hornfels_brick_wall", + "required": false + }, + { + "id": "mineralogy:hornfels_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:quartzite_wall", + "required": false + }, + { + "id": "mineralogy:quartzite_smooth_wall", + "required": false + }, + { + "id": "mineralogy:quartzite_brick_wall", + "required": false + }, + { + "id": "mineralogy:quartzite_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:novaculite_wall", + "required": false + }, + { + "id": "mineralogy:novaculite_smooth_wall", + "required": false + }, + { + "id": "mineralogy:novaculite_brick_wall", + "required": false + }, + { + "id": "mineralogy:novaculite_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:rock_salt_wall", + "required": false + }, + { + "id": "mineralogy:rock_salt_smooth_wall", + "required": false + }, + { + "id": "mineralogy:rock_salt_brick_wall", + "required": false + }, + { + "id": "mineralogy:rock_salt_smooth_brick_wall", + "required": false + } + ], + "forge/tags/blocks/stone.json": [ + "#mineralogy:raw_stones" + ], + "forge/tags/blocks/ores.json": [ + "#forge:ores/nitrate", + "#forge:ores/phosphorous", + "#forge:ores/sulfur" + ], + "forge/tags/blocks/storage_blocks.json": [ + "#forge:storage_blocks/chalk", + "#forge:storage_blocks/gypsum", + "#forge:storage_blocks/nitrate", + "#forge:storage_blocks/phosphorous", + "#forge:storage_blocks/rock_salt", + "#forge:storage_blocks/sulfur" + ], + "forge/tags/blocks/cobblestone/normal.json": [ + "mineralogy:chert", + "mineralogy:pumice" + ], + "mineralogy/tags/items/raw_stones.json": [ + "minecraft:andesite", + "minecraft:basalt", + "minecraft:diorite", + "minecraft:granite", + "minecraft:tuff", + "mineralogy:amphibolite", + "mineralogy:andesite", + "mineralogy:basalt", + "mineralogy:basaltic_glass", + "mineralogy:chalk", + "mineralogy:chert", + "mineralogy:conglomerate", + "mineralogy:diabase", + "mineralogy:diorite", + "mineralogy:dolomite", + "mineralogy:gabbro", + "mineralogy:gneiss", + "mineralogy:granite", + "mineralogy:gypsum", + "mineralogy:hornfels", + "mineralogy:limestone", + "mineralogy:marble", + "mineralogy:novaculite", + "mineralogy:pegmatite", + "mineralogy:peridotite", + "mineralogy:phyllite", + "mineralogy:pumice", + "mineralogy:quartzite", + "mineralogy:rhyolite", + "mineralogy:rock_salt", + "mineralogy:schist", + "mineralogy:scoria", + "mineralogy:shale", + "mineralogy:siltstone", + "mineralogy:slate", + "mineralogy:tuff" + ], + "minecraft/tags/items/slabs.json": [ + { + "id": "mineralogy:andesite_slab", + "required": false + }, + { + "id": "mineralogy:andesite_smooth_slab", + "required": false + }, + { + "id": "mineralogy:andesite_brick_slab", + "required": false + }, + { + "id": "mineralogy:andesite_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:basalt_slab", + "required": false + }, + { + "id": "mineralogy:basalt_smooth_slab", + "required": false + }, + { + "id": "mineralogy:basalt_brick_slab", + "required": false + }, + { + "id": "mineralogy:basalt_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:diorite_slab", + "required": false + }, + { + "id": "mineralogy:diorite_smooth_slab", + "required": false + }, + { + "id": "mineralogy:diorite_brick_slab", + "required": false + }, + { + "id": "mineralogy:diorite_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:granite_slab", + "required": false + }, + { + "id": "mineralogy:granite_smooth_slab", + "required": false + }, + { + "id": "mineralogy:granite_brick_slab", + "required": false + }, + { + "id": "mineralogy:granite_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:rhyolite_slab", + "required": false + }, + { + "id": "mineralogy:rhyolite_smooth_slab", + "required": false + }, + { + "id": "mineralogy:rhyolite_brick_slab", + "required": false + }, + { + "id": "mineralogy:rhyolite_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:pegmatite_slab", + "required": false + }, + { + "id": "mineralogy:pegmatite_smooth_slab", + "required": false + }, + { + "id": "mineralogy:pegmatite_brick_slab", + "required": false + }, + { + "id": "mineralogy:pegmatite_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:diabase_slab", + "required": false + }, + { + "id": "mineralogy:diabase_smooth_slab", + "required": false + }, + { + "id": "mineralogy:diabase_brick_slab", + "required": false + }, + { + "id": "mineralogy:diabase_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:gabbro_slab", + "required": false + }, + { + "id": "mineralogy:gabbro_smooth_slab", + "required": false + }, + { + "id": "mineralogy:gabbro_brick_slab", + "required": false + }, + { + "id": "mineralogy:gabbro_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:peridotite_slab", + "required": false + }, + { + "id": "mineralogy:peridotite_smooth_slab", + "required": false + }, + { + "id": "mineralogy:peridotite_brick_slab", + "required": false + }, + { + "id": "mineralogy:peridotite_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:basaltic_glass_slab", + "required": false + }, + { + "id": "mineralogy:basaltic_glass_smooth_slab", + "required": false + }, + { + "id": "mineralogy:basaltic_glass_brick_slab", + "required": false + }, + { + "id": "mineralogy:basaltic_glass_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:scoria_slab", + "required": false + }, + { + "id": "mineralogy:scoria_smooth_slab", + "required": false + }, + { + "id": "mineralogy:scoria_brick_slab", + "required": false + }, + { + "id": "mineralogy:scoria_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:tuff_slab", + "required": false + }, + { + "id": "mineralogy:tuff_smooth_slab", + "required": false + }, + { + "id": "mineralogy:tuff_brick_slab", + "required": false + }, + { + "id": "mineralogy:tuff_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:shale_slab", + "required": false + }, + { + "id": "mineralogy:shale_smooth_slab", + "required": false + }, + { + "id": "mineralogy:shale_brick_slab", + "required": false + }, + { + "id": "mineralogy:shale_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:conglomerate_slab", + "required": false + }, + { + "id": "mineralogy:conglomerate_smooth_slab", + "required": false + }, + { + "id": "mineralogy:conglomerate_brick_slab", + "required": false + }, + { + "id": "mineralogy:conglomerate_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:dolomite_slab", + "required": false + }, + { + "id": "mineralogy:dolomite_smooth_slab", + "required": false + }, + { + "id": "mineralogy:dolomite_brick_slab", + "required": false + }, + { + "id": "mineralogy:dolomite_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:limestone_slab", + "required": false + }, + { + "id": "mineralogy:limestone_smooth_slab", + "required": false + }, + { + "id": "mineralogy:limestone_brick_slab", + "required": false + }, + { + "id": "mineralogy:limestone_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:siltstone_slab", + "required": false + }, + { + "id": "mineralogy:siltstone_smooth_slab", + "required": false + }, + { + "id": "mineralogy:siltstone_brick_slab", + "required": false + }, + { + "id": "mineralogy:siltstone_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:marble_slab", + "required": false + }, + { + "id": "mineralogy:marble_smooth_slab", + "required": false + }, + { + "id": "mineralogy:marble_brick_slab", + "required": false + }, + { + "id": "mineralogy:marble_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:slate_slab", + "required": false + }, + { + "id": "mineralogy:slate_smooth_slab", + "required": false + }, + { + "id": "mineralogy:slate_brick_slab", + "required": false + }, + { + "id": "mineralogy:slate_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:schist_slab", + "required": false + }, + { + "id": "mineralogy:schist_smooth_slab", + "required": false + }, + { + "id": "mineralogy:schist_brick_slab", + "required": false + }, + { + "id": "mineralogy:schist_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:gneiss_slab", + "required": false + }, + { + "id": "mineralogy:gneiss_smooth_slab", + "required": false + }, + { + "id": "mineralogy:gneiss_brick_slab", + "required": false + }, + { + "id": "mineralogy:gneiss_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:phyllite_slab", + "required": false + }, + { + "id": "mineralogy:phyllite_smooth_slab", + "required": false + }, + { + "id": "mineralogy:phyllite_brick_slab", + "required": false + }, + { + "id": "mineralogy:phyllite_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:amphibolite_slab", + "required": false + }, + { + "id": "mineralogy:amphibolite_smooth_slab", + "required": false + }, + { + "id": "mineralogy:amphibolite_brick_slab", + "required": false + }, + { + "id": "mineralogy:amphibolite_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:hornfels_slab", + "required": false + }, + { + "id": "mineralogy:hornfels_smooth_slab", + "required": false + }, + { + "id": "mineralogy:hornfels_brick_slab", + "required": false + }, + { + "id": "mineralogy:hornfels_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:quartzite_slab", + "required": false + }, + { + "id": "mineralogy:quartzite_smooth_slab", + "required": false + }, + { + "id": "mineralogy:quartzite_brick_slab", + "required": false + }, + { + "id": "mineralogy:quartzite_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:novaculite_slab", + "required": false + }, + { + "id": "mineralogy:novaculite_smooth_slab", + "required": false + }, + { + "id": "mineralogy:novaculite_brick_slab", + "required": false + }, + { + "id": "mineralogy:novaculite_smooth_brick_slab", + "required": false + }, + { + "id": "mineralogy:rock_salt_slab", + "required": false + }, + { + "id": "mineralogy:rock_salt_smooth_slab", + "required": false + }, + { + "id": "mineralogy:rock_salt_brick_slab", + "required": false + }, + { + "id": "mineralogy:rock_salt_smooth_brick_slab", + "required": false + } + ], + "minecraft/tags/items/stairs.json": [ + { + "id": "mineralogy:andesite_stairs", + "required": false + }, + { + "id": "mineralogy:andesite_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:andesite_brick_stairs", + "required": false + }, + { + "id": "mineralogy:andesite_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:basalt_stairs", + "required": false + }, + { + "id": "mineralogy:basalt_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:basalt_brick_stairs", + "required": false + }, + { + "id": "mineralogy:basalt_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:diorite_stairs", + "required": false + }, + { + "id": "mineralogy:diorite_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:diorite_brick_stairs", + "required": false + }, + { + "id": "mineralogy:diorite_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:granite_stairs", + "required": false + }, + { + "id": "mineralogy:granite_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:granite_brick_stairs", + "required": false + }, + { + "id": "mineralogy:granite_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:rhyolite_stairs", + "required": false + }, + { + "id": "mineralogy:rhyolite_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:rhyolite_brick_stairs", + "required": false + }, + { + "id": "mineralogy:rhyolite_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:pegmatite_stairs", + "required": false + }, + { + "id": "mineralogy:pegmatite_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:pegmatite_brick_stairs", + "required": false + }, + { + "id": "mineralogy:pegmatite_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:diabase_stairs", + "required": false + }, + { + "id": "mineralogy:diabase_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:diabase_brick_stairs", + "required": false + }, + { + "id": "mineralogy:diabase_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:gabbro_stairs", + "required": false + }, + { + "id": "mineralogy:gabbro_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:gabbro_brick_stairs", + "required": false + }, + { + "id": "mineralogy:gabbro_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:peridotite_stairs", + "required": false + }, + { + "id": "mineralogy:peridotite_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:peridotite_brick_stairs", + "required": false + }, + { + "id": "mineralogy:peridotite_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:basaltic_glass_stairs", + "required": false + }, + { + "id": "mineralogy:basaltic_glass_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:basaltic_glass_brick_stairs", + "required": false + }, + { + "id": "mineralogy:basaltic_glass_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:scoria_stairs", + "required": false + }, + { + "id": "mineralogy:scoria_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:scoria_brick_stairs", + "required": false + }, + { + "id": "mineralogy:scoria_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:tuff_stairs", + "required": false + }, + { + "id": "mineralogy:tuff_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:tuff_brick_stairs", + "required": false + }, + { + "id": "mineralogy:tuff_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:shale_stairs", + "required": false + }, + { + "id": "mineralogy:shale_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:shale_brick_stairs", + "required": false + }, + { + "id": "mineralogy:shale_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:conglomerate_stairs", + "required": false + }, + { + "id": "mineralogy:conglomerate_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:conglomerate_brick_stairs", + "required": false + }, + { + "id": "mineralogy:conglomerate_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:dolomite_stairs", + "required": false + }, + { + "id": "mineralogy:dolomite_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:dolomite_brick_stairs", + "required": false + }, + { + "id": "mineralogy:dolomite_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:limestone_stairs", + "required": false + }, + { + "id": "mineralogy:limestone_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:limestone_brick_stairs", + "required": false + }, + { + "id": "mineralogy:limestone_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:siltstone_stairs", + "required": false + }, + { + "id": "mineralogy:siltstone_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:siltstone_brick_stairs", + "required": false + }, + { + "id": "mineralogy:siltstone_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:marble_stairs", + "required": false + }, + { + "id": "mineralogy:marble_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:marble_brick_stairs", + "required": false + }, + { + "id": "mineralogy:marble_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:slate_stairs", + "required": false + }, + { + "id": "mineralogy:slate_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:slate_brick_stairs", + "required": false + }, + { + "id": "mineralogy:slate_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:schist_stairs", + "required": false + }, + { + "id": "mineralogy:schist_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:schist_brick_stairs", + "required": false + }, + { + "id": "mineralogy:schist_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:gneiss_stairs", + "required": false + }, + { + "id": "mineralogy:gneiss_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:gneiss_brick_stairs", + "required": false + }, + { + "id": "mineralogy:gneiss_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:phyllite_stairs", + "required": false + }, + { + "id": "mineralogy:phyllite_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:phyllite_brick_stairs", + "required": false + }, + { + "id": "mineralogy:phyllite_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:amphibolite_stairs", + "required": false + }, + { + "id": "mineralogy:amphibolite_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:amphibolite_brick_stairs", + "required": false + }, + { + "id": "mineralogy:amphibolite_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:hornfels_stairs", + "required": false + }, + { + "id": "mineralogy:hornfels_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:hornfels_brick_stairs", + "required": false + }, + { + "id": "mineralogy:hornfels_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:quartzite_stairs", + "required": false + }, + { + "id": "mineralogy:quartzite_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:quartzite_brick_stairs", + "required": false + }, + { + "id": "mineralogy:quartzite_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:novaculite_stairs", + "required": false + }, + { + "id": "mineralogy:novaculite_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:novaculite_brick_stairs", + "required": false + }, + { + "id": "mineralogy:novaculite_smooth_brick_stairs", + "required": false + }, + { + "id": "mineralogy:rock_salt_stairs", + "required": false + }, + { + "id": "mineralogy:rock_salt_smooth_stairs", + "required": false + }, + { + "id": "mineralogy:rock_salt_brick_stairs", + "required": false + }, + { + "id": "mineralogy:rock_salt_smooth_brick_stairs", + "required": false + } + ], + "minecraft/tags/items/walls.json": [ + { + "id": "mineralogy:andesite_wall", + "required": false + }, + { + "id": "mineralogy:andesite_smooth_wall", + "required": false + }, + { + "id": "mineralogy:andesite_brick_wall", + "required": false + }, + { + "id": "mineralogy:andesite_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:basalt_wall", + "required": false + }, + { + "id": "mineralogy:basalt_smooth_wall", + "required": false + }, + { + "id": "mineralogy:basalt_brick_wall", + "required": false + }, + { + "id": "mineralogy:basalt_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:diorite_wall", + "required": false + }, + { + "id": "mineralogy:diorite_smooth_wall", + "required": false + }, + { + "id": "mineralogy:diorite_brick_wall", + "required": false + }, + { + "id": "mineralogy:diorite_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:granite_wall", + "required": false + }, + { + "id": "mineralogy:granite_smooth_wall", + "required": false + }, + { + "id": "mineralogy:granite_brick_wall", + "required": false + }, + { + "id": "mineralogy:granite_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:rhyolite_wall", + "required": false + }, + { + "id": "mineralogy:rhyolite_smooth_wall", + "required": false + }, + { + "id": "mineralogy:rhyolite_brick_wall", + "required": false + }, + { + "id": "mineralogy:rhyolite_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:pegmatite_wall", + "required": false + }, + { + "id": "mineralogy:pegmatite_smooth_wall", + "required": false + }, + { + "id": "mineralogy:pegmatite_brick_wall", + "required": false + }, + { + "id": "mineralogy:pegmatite_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:diabase_wall", + "required": false + }, + { + "id": "mineralogy:diabase_smooth_wall", + "required": false + }, + { + "id": "mineralogy:diabase_brick_wall", + "required": false + }, + { + "id": "mineralogy:diabase_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:gabbro_wall", + "required": false + }, + { + "id": "mineralogy:gabbro_smooth_wall", + "required": false + }, + { + "id": "mineralogy:gabbro_brick_wall", + "required": false + }, + { + "id": "mineralogy:gabbro_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:peridotite_wall", + "required": false + }, + { + "id": "mineralogy:peridotite_smooth_wall", + "required": false + }, + { + "id": "mineralogy:peridotite_brick_wall", + "required": false + }, + { + "id": "mineralogy:peridotite_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:basaltic_glass_wall", + "required": false + }, + { + "id": "mineralogy:basaltic_glass_smooth_wall", + "required": false + }, + { + "id": "mineralogy:basaltic_glass_brick_wall", + "required": false + }, + { + "id": "mineralogy:basaltic_glass_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:scoria_wall", + "required": false + }, + { + "id": "mineralogy:scoria_smooth_wall", + "required": false + }, + { + "id": "mineralogy:scoria_brick_wall", + "required": false + }, + { + "id": "mineralogy:scoria_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:tuff_wall", + "required": false + }, + { + "id": "mineralogy:tuff_smooth_wall", + "required": false + }, + { + "id": "mineralogy:tuff_brick_wall", + "required": false + }, + { + "id": "mineralogy:tuff_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:shale_wall", + "required": false + }, + { + "id": "mineralogy:shale_smooth_wall", + "required": false + }, + { + "id": "mineralogy:shale_brick_wall", + "required": false + }, + { + "id": "mineralogy:shale_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:conglomerate_wall", + "required": false + }, + { + "id": "mineralogy:conglomerate_smooth_wall", + "required": false + }, + { + "id": "mineralogy:conglomerate_brick_wall", + "required": false + }, + { + "id": "mineralogy:conglomerate_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:dolomite_wall", + "required": false + }, + { + "id": "mineralogy:dolomite_smooth_wall", + "required": false + }, + { + "id": "mineralogy:dolomite_brick_wall", + "required": false + }, + { + "id": "mineralogy:dolomite_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:limestone_wall", + "required": false + }, + { + "id": "mineralogy:limestone_smooth_wall", + "required": false + }, + { + "id": "mineralogy:limestone_brick_wall", + "required": false + }, + { + "id": "mineralogy:limestone_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:siltstone_wall", + "required": false + }, + { + "id": "mineralogy:siltstone_smooth_wall", + "required": false + }, + { + "id": "mineralogy:siltstone_brick_wall", + "required": false + }, + { + "id": "mineralogy:siltstone_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:marble_wall", + "required": false + }, + { + "id": "mineralogy:marble_smooth_wall", + "required": false + }, + { + "id": "mineralogy:marble_brick_wall", + "required": false + }, + { + "id": "mineralogy:marble_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:slate_wall", + "required": false + }, + { + "id": "mineralogy:slate_smooth_wall", + "required": false + }, + { + "id": "mineralogy:slate_brick_wall", + "required": false + }, + { + "id": "mineralogy:slate_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:schist_wall", + "required": false + }, + { + "id": "mineralogy:schist_smooth_wall", + "required": false + }, + { + "id": "mineralogy:schist_brick_wall", + "required": false + }, + { + "id": "mineralogy:schist_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:gneiss_wall", + "required": false + }, + { + "id": "mineralogy:gneiss_smooth_wall", + "required": false + }, + { + "id": "mineralogy:gneiss_brick_wall", + "required": false + }, + { + "id": "mineralogy:gneiss_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:phyllite_wall", + "required": false + }, + { + "id": "mineralogy:phyllite_smooth_wall", + "required": false + }, + { + "id": "mineralogy:phyllite_brick_wall", + "required": false + }, + { + "id": "mineralogy:phyllite_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:amphibolite_wall", + "required": false + }, + { + "id": "mineralogy:amphibolite_smooth_wall", + "required": false + }, + { + "id": "mineralogy:amphibolite_brick_wall", + "required": false + }, + { + "id": "mineralogy:amphibolite_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:hornfels_wall", + "required": false + }, + { + "id": "mineralogy:hornfels_smooth_wall", + "required": false + }, + { + "id": "mineralogy:hornfels_brick_wall", + "required": false + }, + { + "id": "mineralogy:hornfels_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:quartzite_wall", + "required": false + }, + { + "id": "mineralogy:quartzite_smooth_wall", + "required": false + }, + { + "id": "mineralogy:quartzite_brick_wall", + "required": false + }, + { + "id": "mineralogy:quartzite_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:novaculite_wall", + "required": false + }, + { + "id": "mineralogy:novaculite_smooth_wall", + "required": false + }, + { + "id": "mineralogy:novaculite_brick_wall", + "required": false + }, + { + "id": "mineralogy:novaculite_smooth_brick_wall", + "required": false + }, + { + "id": "mineralogy:rock_salt_wall", + "required": false + }, + { + "id": "mineralogy:rock_salt_smooth_wall", + "required": false + }, + { + "id": "mineralogy:rock_salt_brick_wall", + "required": false + }, + { + "id": "mineralogy:rock_salt_smooth_brick_wall", + "required": false + } + ], + "forge/tags/items/stone.json": [ + "#mineralogy:raw_stones" + ], + "forge/tags/items/ores.json": [ + "#forge:ores/nitrate", + "#forge:ores/phosphorous", + "#forge:ores/sulfur" + ], + "forge/tags/items/storage_blocks.json": [ + "#forge:storage_blocks/chalk", + "#forge:storage_blocks/gypsum", + "#forge:storage_blocks/nitrate", + "#forge:storage_blocks/phosphorous", + "#forge:storage_blocks/rock_salt", + "#forge:storage_blocks/sulfur" + ], + "forge/tags/items/cobblestone/normal.json": [ + "mineralogy:chert", + "mineralogy:pumice" + ], + "mineralogy/tags/blocks/dripstone_base_stones.json": [ + "#minecraft:base_stone_overworld", + "#mineralogy:terrain_rocks" + ], + "minecraft/tags/blocks/wall_post_override.json": [ + "mineralogy:rocksaltlamp" + ] + } +} From 98b49182b2a1d19c94e5ba945a2387fd4c911699 Mon Sep 17 00:00:00 2001 From: JohnBraham Date: Thu, 8 Oct 2026 10:29:34 +0100 Subject: [PATCH 3/3] Update the Forge 1.20.6 release notes --- CHANGELOG.txt | 2 +- docs/VERSIONS.md | 12 ++++++------ 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/CHANGELOG.txt b/CHANGELOG.txt index dc9d46376..46810dc9a 100644 --- a/CHANGELOG.txt +++ b/CHANGELOG.txt @@ -1,4 +1,4 @@ -Mineralogy 6.1.4.120061 for Minecraft 1.20.6 +Mineralogy 6.1.4.120061 for Minecraft 1.20.6 (Forge) - Sculk can spread across natural Mineralogy terrain. Goats can spawn on it, and the harder raw rocks can break their horns. These changes also work in diff --git a/docs/VERSIONS.md b/docs/VERSIONS.md index 20d9a41d6..4a31935ae 100644 --- a/docs/VERSIONS.md +++ b/docs/VERSIONS.md @@ -71,11 +71,11 @@ new releases and does not reinterpret an old file's version. ## Vanilla stone compatibility campaign -The following local candidates share the 6.1.4 additive terrain compatibility -fix. This is a candidate matrix, not a claim that every release is published. +The following target builds share the 6.1.4 terrain compatibility fixes. +This is a release-target matrix, not a claim that every release is published. NeoForge 26.3 retains its existing 6.1.3 compatibility correction. -| Minecraft | Forge candidate | NeoForge candidate | +| Minecraft | Forge version | NeoForge version | | --- | --- | --- | | 1.16.5 | 6.1.4.116051 | Not in scope | | 1.17.1 | 6.1.4.117011 | Not in scope | @@ -92,8 +92,8 @@ NeoForge 26.3 retains its existing 6.1.3 compatibility correction. The revised campaign includes Forge 1.16.5–1.18.2 where each interface exists. Minecraft 1.17 retains its native goat-spawning rule. Sulfur cubes on 26.2 and 26.3 consume only raw Mineralogy rocks, not polished or brick forms; vanilla's -own consumption rules are unchanged. Every revised local candidate needs -renewed manual acceptance. Native-texture synchronization remains separate. +own consumption rules are unchanged. Native-texture synchronization remains +a separate campaign. ## Major version @@ -181,7 +181,7 @@ particular jar can load on the current game. Mineralogy 6 also requires OreSpawn `[4.0.6,5.0.0)`. OreSpawn uses the same target calculation, so the matching Minecraft 1.20.6 Forge release used for -this candidate is `4.0.16.120061`. The dependency range deliberately describes the supported +this release is `4.0.16.120061`. The dependency range deliberately describes the supported functional OreSpawn generation; Forge still prevents jars for another Minecraft target from loading together.