diff --git a/.gitignore b/.gitignore index 945e6b587..3f09e102a 100644 --- a/.gitignore +++ b/.gitignore @@ -28,6 +28,7 @@ /projects/**/*.launch /repo/ /buildSrc +src/generated/resources/.cache/ #Patch rejects /patches-/ diff --git a/build.gradle b/build.gradle index 52ff8364c..33c3e3e16 100644 --- a/build.gradle +++ b/build.gradle @@ -130,7 +130,10 @@ project(':forge') { srcDirs = ["$rootDir/src/main/java"] } resources { - srcDirs = ["$rootDir/src/main/resources"] + srcDirs = [ + "$rootDir/src/main/resources", + "$rootDir/src/generated/resources" + ] } } test { @@ -268,6 +271,29 @@ project(':forge') { TestMods { sources sourceSets.test } } } + + forge_data { + taskName 'forge_data' + + main 'net.minecraftforge.userdev.LaunchTesting' + workingDirectory project.file('run') + + environment 'target', 'fmldevdata' + + environment 'MC_VERSION', MC_VERSION + environment 'MCP_VERSION', MCP_VERSION + environment 'FORGE_GROUP', project.group + environment 'FORGE_SPEC', SPEC_VERSION + environment 'FORGE_VERSION', project.version.substring(MC_VERSION.length() + 1).toString() + environment 'LAUNCHER_VERSION', SPEC_VERSION + + ideaModule "${rootProject.name}.${project.name}.userdev" + + source sourceSets.main + source sourceSets.userdev + + args '--mod', 'forge', '--all', '--output', rootProject.file('src/generated/resources/') + } } } diff --git a/patches/minecraft/net/minecraft/data/DataGenerator.java.patch b/patches/minecraft/net/minecraft/data/DataGenerator.java.patch new file mode 100644 index 000000000..c62b1ba29 --- /dev/null +++ b/patches/minecraft/net/minecraft/data/DataGenerator.java.patch @@ -0,0 +1,22 @@ +--- a/net/minecraft/data/DataGenerator.java ++++ b/net/minecraft/data/DataGenerator.java +@@ -19,7 +19,7 @@ + + public DataGenerator(Path p_i48266_1_, Collection p_i48266_2_) { + this.field_200395_c = p_i48266_1_; +- this.field_200394_b = p_i48266_2_; ++ this.field_200394_b = Lists.newArrayList(p_i48266_2_); + } + + public Collection func_200389_a() { +@@ -53,6 +53,10 @@ + this.field_200396_d.add(p_200390_1_); + } + ++ public void addInput(Path value) { ++ this.field_200394_b.add(value); ++ } ++ + static { + Bootstrap.func_151354_b(); + } diff --git a/patches/minecraft/net/minecraft/data/DirectoryCache.java.patch b/patches/minecraft/net/minecraft/data/DirectoryCache.java.patch new file mode 100644 index 000000000..8bcbd6305 --- /dev/null +++ b/patches/minecraft/net/minecraft/data/DirectoryCache.java.patch @@ -0,0 +1,11 @@ +--- a/net/minecraft/data/DirectoryCache.java ++++ b/net/minecraft/data/DirectoryCache.java +@@ -23,7 +23,7 @@ + private final Path field_208326_c; + private int field_208327_d; + private final Map field_208328_e = Maps.newHashMap(); +- private final Map field_208329_f = Maps.newHashMap(); ++ private final Map field_208329_f = Maps.newTreeMap(); //Forge: TreeMap, makes the file output predictable/sorted. + private final Set field_218457_g = Sets.newHashSet(); + + public DirectoryCache(Path p_i49352_1_, String p_i49352_2_) throws IOException { diff --git a/patches/minecraft/net/minecraft/data/Main.java.patch b/patches/minecraft/net/minecraft/data/Main.java.patch new file mode 100644 index 000000000..0498c66cf --- /dev/null +++ b/patches/minecraft/net/minecraft/data/Main.java.patch @@ -0,0 +1,51 @@ +--- a/net/minecraft/data/Main.java ++++ b/net/minecraft/data/Main.java +@@ -1,5 +1,6 @@ + package net.minecraft.data; + ++import java.io.File; + import java.io.IOException; + import java.nio.file.Path; + import java.nio.file.Paths; +@@ -21,8 +22,12 @@ + OptionSpec optionspec6 = optionparser.accepts("all", "Include all generators"); + OptionSpec optionspec7 = optionparser.accepts("output", "Output folder").withRequiredArg().defaultsTo("generated"); + OptionSpec optionspec8 = optionparser.accepts("input", "Input folder").withRequiredArg(); ++ OptionSpec gameDir = optionparser.accepts("gameDir").withRequiredArg().ofType(File.class).defaultsTo(new File(".")); ++ OptionSpec mod = optionparser.accepts("mod", "The mod to dump").withRequiredArg(); ++ net.minecraft.util.registry.Bootstrap.func_151354_b(); ++ net.minecraftforge.fml.ModLoader.get().loadMods(); + OptionSet optionset = optionparser.parse(p_main_0_); +- if (!optionset.has(optionspec) && optionset.hasOptions()) { ++ if (!optionset.has(optionspec) && optionset.hasOptions() && !(optionset.specs().size() == 1 && optionset.has(gameDir))) { + Path path = Paths.get(optionspec7.value(optionset)); + boolean flag = optionset.has(optionspec6); + boolean flag1 = flag || optionset.has(optionspec2); +@@ -30,10 +35,23 @@ + boolean flag3 = flag || optionset.has(optionspec3); + boolean flag4 = flag || optionset.has(optionspec4); + boolean flag5 = flag || optionset.has(optionspec5); +- DataGenerator datagenerator = func_200264_a(path, optionset.valuesOf(optionspec8).stream().map((p_200263_0_) -> { +- return Paths.get(p_200263_0_); +- }).collect(Collectors.toList()), flag1, flag2, flag3, flag4, flag5); +- datagenerator.func_200392_c(); ++ Collection inputs = optionset.valuesOf(optionspec8).stream().map(Paths::get).collect(Collectors.toList()); ++ java.util.Set mods = optionset.valuesOf(mod).stream().collect(Collectors.toSet()); ++ net.minecraftforge.fml.ModList.get().forEachModContainer((modid, mc) -> { ++ try { ++ //We have to go to the subclass, as ModContainer doesn't have the event bus. ++ if (mods.contains(modid) && mc instanceof net.minecraftforge.fml.javafmlmod.FMLModContainer) { ++ DataGenerator gen = new DataGenerator(mods.size() == 1 ? path : path.resolve(modid), inputs); ++ ((net.minecraftforge.fml.javafmlmod.FMLModContainer)mc).getEventBus().post(new net.minecraftforge.event.GatherDataEvent(gen, flag2, flag1, flag3, flag4, flag5)); ++ gen.func_200392_c(); ++ } ++ } catch (IOException e) { ++ e.printStackTrace(); ++ } ++ }); ++ ++ if (mods.contains("minecraft") || mods.isEmpty()) ++ func_200264_a(mods.isEmpty() ? path : path.resolve("minecraft"), inputs, flag1, flag2, flag3, flag4, flag5).func_200392_c(); + } else { + optionparser.printHelpOn(System.out); + } diff --git a/patches/minecraft/net/minecraft/data/TagsProvider.java.patch b/patches/minecraft/net/minecraft/data/TagsProvider.java.patch new file mode 100644 index 000000000..a9cff0bf4 --- /dev/null +++ b/patches/minecraft/net/minecraft/data/TagsProvider.java.patch @@ -0,0 +1,47 @@ +--- a/net/minecraft/data/TagsProvider.java ++++ b/net/minecraft/data/TagsProvider.java +@@ -41,17 +41,27 @@ + return Optional.empty(); + }, "", false, "generated"); + +- for(Entry, Tag.Builder> entry : this.field_200434_b.entrySet()) { +- ResourceLocation resourcelocation = entry.getKey().func_199886_b(); +- if (!entry.getValue().func_200160_a(tagcollection::func_199910_a)) { +- throw new UnsupportedOperationException("Unsupported referencing of tags!"); ++ //This does not support resolving nested tags of ResourceLocation type entries. ++ //So we must do this in multiple passes, and error if we have a pass that doesn't resolve anything. ++ java.util.Set> pending = new java.util.HashSet<>(this.field_200434_b.keySet()); ++ java.util.Set> processed = new java.util.HashSet<>(); ++ ++ do { ++ pending.removeAll(processed); ++ processed.clear(); ++ for (Tag key : pending) { ++ Tag.Builder value = this.field_200434_b.get(key); ++ ResourceLocation resourcelocation = key.func_199886_b(); ++ if (!value.func_200160_a(tagcollection::func_199910_a)) { ++ continue; + } + +- Tag tag = entry.getValue().func_200051_a(resourcelocation); ++ Tag tag = value.func_200051_a(resourcelocation); + JsonObject jsonobject = tag.func_200571_a(this.field_200435_c::func_177774_c); + Path path = this.func_200431_a(resourcelocation); + tagcollection.func_199912_a(tag); + this.func_200429_a(tagcollection); ++ processed.add(key); + + try { + String s = field_200437_e.toJson((JsonElement)jsonobject); +@@ -69,7 +79,11 @@ + field_200436_d.error("Couldn't save tags to {}", path, ioexception); + } + } ++ } while (!processed.isEmpty() && !pending.isEmpty()); + ++ if (!pending.isEmpty()) { ++ throw new UnsupportedOperationException("Failed to resolve tags: " + pending.stream().map(Tag::func_199886_b).map(Object::toString).sorted().collect(java.util.stream.Collectors.joining(", "))); ++ } + } + + protected abstract void func_200429_a(TagCollection p_200429_1_); diff --git a/patches/minecraft/net/minecraft/tags/Tag.java.patch b/patches/minecraft/net/minecraft/tags/Tag.java.patch index b1ad6785d..40ea1a6b6 100644 --- a/patches/minecraft/net/minecraft/tags/Tag.java.patch +++ b/patches/minecraft/net/minecraft/tags/Tag.java.patch @@ -1,6 +1,73 @@ --- a/net/minecraft/tags/Tag.java +++ b/net/minecraft/tags/Tag.java -@@ -147,8 +147,10 @@ +@@ -21,6 +21,7 @@ + private final ResourceLocation field_199888_a; + private final Set field_199889_b; + private final Collection> field_200150_c; ++ private boolean replace = false; + + public Tag(ResourceLocation p_i48236_1_) { + this.field_199888_a = p_i48236_1_; +@@ -29,6 +30,9 @@ + } + + public Tag(ResourceLocation p_i48224_1_, Collection> p_i48224_2_, boolean p_i48224_3_) { ++ this(p_i48224_1_, p_i48224_2_, p_i48224_3_, false); ++ } ++ private Tag(ResourceLocation p_i48224_1_, Collection> p_i48224_2_, boolean p_i48224_3_, boolean replace) { + this.field_199888_a = p_i48224_1_; + this.field_199889_b = (Set)(p_i48224_3_ ? Sets.newLinkedHashSet() : Sets.newHashSet()); + this.field_200150_c = p_i48224_2_; +@@ -47,7 +51,7 @@ + itagentry.func_200576_a(jsonarray, p_200571_1_); + } + +- jsonobject.addProperty("replace", false); ++ jsonobject.addProperty("replace", replace); + jsonobject.add("values", jsonarray); + return jsonobject; + } +@@ -76,6 +80,7 @@ + public static class Builder { + private final Set> field_200052_a = Sets.newLinkedHashSet(); + private boolean field_200053_b; ++ private boolean replace = false; + + public static Tag.Builder func_200047_a() { + return new Tag.Builder<>(); +@@ -107,6 +112,22 @@ + return this; + } + ++ @SafeVarargs ++ public final Tag.Builder add(Tag... tags) { ++ for (Tag tag : tags) ++ func_200574_a(tag); ++ return this; ++ } ++ ++ public Tag.Builder replace(boolean value) { ++ this.replace = value; ++ return this; ++ } ++ ++ public Tag.Builder replace() { ++ return replace(true); ++ } ++ + public Tag.Builder func_200045_a(boolean p_200045_1_) { + this.field_200053_b = p_200045_1_; + return this; +@@ -123,7 +144,7 @@ + } + + public Tag func_200051_a(ResourceLocation p_200051_1_) { +- return new Tag<>(p_200051_1_, this.field_200052_a, this.field_200053_b); ++ return new Tag<>(p_200051_1_, this.field_200052_a, this.field_200053_b, this.replace); + } + + public Tag.Builder func_219783_a(Function> p_219783_1_, JsonObject p_219783_2_) { +@@ -147,8 +168,10 @@ } this.field_200052_a.addAll(list); @@ -11,7 +78,7 @@ } public interface ITagEntry { -@@ -187,6 +189,8 @@ +@@ -187,6 +210,8 @@ public Collection func_200578_a() { return this.field_200165_a; } @@ -20,7 +87,7 @@ } public static class TagEntry implements Tag.ITagEntry { -@@ -233,5 +237,7 @@ +@@ -233,5 +258,7 @@ public void func_200576_a(JsonArray p_200576_1_, Function p_200576_2_) { p_200576_1_.add("#" + this.func_200577_a()); } diff --git a/src/main/resources/data/forge/tags/blocks/chests.json b/src/generated/resources/data/forge/tags/blocks/chests.json similarity index 98% rename from src/main/resources/data/forge/tags/blocks/chests.json rename to src/generated/resources/data/forge/tags/blocks/chests.json index 5b2186a2e..edd007876 100644 --- a/src/main/resources/data/forge/tags/blocks/chests.json +++ b/src/generated/resources/data/forge/tags/blocks/chests.json @@ -5,4 +5,4 @@ "#forge:chests/trapped", "#forge:chests/wooden" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/items/chests/ender.json b/src/generated/resources/data/forge/tags/blocks/chests/ender.json similarity index 97% rename from src/main/resources/data/forge/tags/items/chests/ender.json rename to src/generated/resources/data/forge/tags/blocks/chests/ender.json index d7a16e96e..6416580a3 100644 --- a/src/main/resources/data/forge/tags/items/chests/ender.json +++ b/src/generated/resources/data/forge/tags/blocks/chests/ender.json @@ -3,4 +3,4 @@ "values": [ "minecraft:ender_chest" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/items/chests/trapped.json b/src/generated/resources/data/forge/tags/blocks/chests/trapped.json similarity index 97% rename from src/main/resources/data/forge/tags/items/chests/trapped.json rename to src/generated/resources/data/forge/tags/blocks/chests/trapped.json index 55c7aec17..7d4855ac2 100644 --- a/src/main/resources/data/forge/tags/items/chests/trapped.json +++ b/src/generated/resources/data/forge/tags/blocks/chests/trapped.json @@ -3,4 +3,4 @@ "values": [ "minecraft:trapped_chest" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/items/chests/wooden.json b/src/generated/resources/data/forge/tags/blocks/chests/wooden.json similarity index 97% rename from src/main/resources/data/forge/tags/items/chests/wooden.json rename to src/generated/resources/data/forge/tags/blocks/chests/wooden.json index 46ff16fc9..441d80f5b 100644 --- a/src/main/resources/data/forge/tags/items/chests/wooden.json +++ b/src/generated/resources/data/forge/tags/blocks/chests/wooden.json @@ -4,4 +4,4 @@ "minecraft:chest", "minecraft:trapped_chest" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/items/cobblestone.json b/src/generated/resources/data/forge/tags/blocks/cobblestone.json similarity index 98% rename from src/main/resources/data/forge/tags/items/cobblestone.json rename to src/generated/resources/data/forge/tags/blocks/cobblestone.json index a5c96d865..ae95e81b7 100644 --- a/src/main/resources/data/forge/tags/items/cobblestone.json +++ b/src/generated/resources/data/forge/tags/blocks/cobblestone.json @@ -5,4 +5,4 @@ "minecraft:infested_cobblestone", "minecraft:mossy_cobblestone" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/blocks/dirt.json b/src/generated/resources/data/forge/tags/blocks/dirt.json similarity index 98% rename from src/main/resources/data/forge/tags/blocks/dirt.json rename to src/generated/resources/data/forge/tags/blocks/dirt.json index 0e471849e..b89987dca 100644 --- a/src/main/resources/data/forge/tags/blocks/dirt.json +++ b/src/generated/resources/data/forge/tags/blocks/dirt.json @@ -5,4 +5,4 @@ "minecraft:coarse_dirt", "minecraft:podzol" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/blocks/fence_gates.json b/src/generated/resources/data/forge/tags/blocks/fence_gates.json similarity index 97% rename from src/main/resources/data/forge/tags/blocks/fence_gates.json rename to src/generated/resources/data/forge/tags/blocks/fence_gates.json index 4fc8670fd..9508f9133 100644 --- a/src/main/resources/data/forge/tags/blocks/fence_gates.json +++ b/src/generated/resources/data/forge/tags/blocks/fence_gates.json @@ -3,4 +3,4 @@ "values": [ "#forge:fence_gates/wooden" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/items/fence_gates/wooden.json b/src/generated/resources/data/forge/tags/blocks/fence_gates/wooden.json similarity index 99% rename from src/main/resources/data/forge/tags/items/fence_gates/wooden.json rename to src/generated/resources/data/forge/tags/blocks/fence_gates/wooden.json index 7b8030778..d798a4c73 100644 --- a/src/main/resources/data/forge/tags/items/fence_gates/wooden.json +++ b/src/generated/resources/data/forge/tags/blocks/fence_gates/wooden.json @@ -8,4 +8,4 @@ "minecraft:acacia_fence_gate", "minecraft:dark_oak_fence_gate" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/blocks/fences.json b/src/generated/resources/data/forge/tags/blocks/fences.json similarity index 98% rename from src/main/resources/data/forge/tags/blocks/fences.json rename to src/generated/resources/data/forge/tags/blocks/fences.json index a7e4edcd8..55a5f8542 100644 --- a/src/main/resources/data/forge/tags/blocks/fences.json +++ b/src/generated/resources/data/forge/tags/blocks/fences.json @@ -4,4 +4,4 @@ "#forge:fences/nether_brick", "#forge:fences/wooden" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/items/fences/nether_brick.json b/src/generated/resources/data/forge/tags/blocks/fences/nether_brick.json similarity index 97% rename from src/main/resources/data/forge/tags/items/fences/nether_brick.json rename to src/generated/resources/data/forge/tags/blocks/fences/nether_brick.json index 498841169..c6f0bd761 100644 --- a/src/main/resources/data/forge/tags/items/fences/nether_brick.json +++ b/src/generated/resources/data/forge/tags/blocks/fences/nether_brick.json @@ -3,4 +3,4 @@ "values": [ "minecraft:nether_brick_fence" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/items/fences/wooden.json b/src/generated/resources/data/forge/tags/blocks/fences/wooden.json similarity index 99% rename from src/main/resources/data/forge/tags/items/fences/wooden.json rename to src/generated/resources/data/forge/tags/blocks/fences/wooden.json index af77eddec..893271d26 100644 --- a/src/main/resources/data/forge/tags/items/fences/wooden.json +++ b/src/generated/resources/data/forge/tags/blocks/fences/wooden.json @@ -8,4 +8,4 @@ "minecraft:acacia_fence", "minecraft:dark_oak_fence" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/items/ores.json b/src/generated/resources/data/forge/tags/blocks/ores.json similarity index 99% rename from src/main/resources/data/forge/tags/items/ores.json rename to src/generated/resources/data/forge/tags/blocks/ores.json index a889d08c3..45c1b4f22 100644 --- a/src/main/resources/data/forge/tags/items/ores.json +++ b/src/generated/resources/data/forge/tags/blocks/ores.json @@ -1,13 +1,13 @@ { "replace": false, "values": [ - "#forge:ores/iron", - "#forge:ores/gold", "#forge:ores/coal", + "#forge:ores/diamond", + "#forge:ores/emerald", + "#forge:ores/gold", + "#forge:ores/iron", "#forge:ores/lapis", "#forge:ores/redstone", - "#forge:ores/emerald", - "#forge:ores/diamond", "#forge:ores/quartz" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/items/ores/coal.json b/src/generated/resources/data/forge/tags/blocks/ores/coal.json similarity index 97% rename from src/main/resources/data/forge/tags/items/ores/coal.json rename to src/generated/resources/data/forge/tags/blocks/ores/coal.json index 7c71d7807..337900da5 100644 --- a/src/main/resources/data/forge/tags/items/ores/coal.json +++ b/src/generated/resources/data/forge/tags/blocks/ores/coal.json @@ -3,4 +3,4 @@ "values": [ "minecraft:coal_ore" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/blocks/ores/diamond.json b/src/generated/resources/data/forge/tags/blocks/ores/diamond.json similarity index 97% rename from src/main/resources/data/forge/tags/blocks/ores/diamond.json rename to src/generated/resources/data/forge/tags/blocks/ores/diamond.json index 072563e40..927a2c7f9 100644 --- a/src/main/resources/data/forge/tags/blocks/ores/diamond.json +++ b/src/generated/resources/data/forge/tags/blocks/ores/diamond.json @@ -3,4 +3,4 @@ "values": [ "minecraft:diamond_ore" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/items/ores/emerald.json b/src/generated/resources/data/forge/tags/blocks/ores/emerald.json similarity index 97% rename from src/main/resources/data/forge/tags/items/ores/emerald.json rename to src/generated/resources/data/forge/tags/blocks/ores/emerald.json index 3972c84a1..4ad12c477 100644 --- a/src/main/resources/data/forge/tags/items/ores/emerald.json +++ b/src/generated/resources/data/forge/tags/blocks/ores/emerald.json @@ -3,4 +3,4 @@ "values": [ "minecraft:emerald_ore" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/blocks/ores/gold.json b/src/generated/resources/data/forge/tags/blocks/ores/gold.json similarity index 97% rename from src/main/resources/data/forge/tags/blocks/ores/gold.json rename to src/generated/resources/data/forge/tags/blocks/ores/gold.json index ebbc8168c..ec42ee5f2 100644 --- a/src/main/resources/data/forge/tags/blocks/ores/gold.json +++ b/src/generated/resources/data/forge/tags/blocks/ores/gold.json @@ -3,4 +3,4 @@ "values": [ "minecraft:gold_ore" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/items/ores/iron.json b/src/generated/resources/data/forge/tags/blocks/ores/iron.json similarity index 97% rename from src/main/resources/data/forge/tags/items/ores/iron.json rename to src/generated/resources/data/forge/tags/blocks/ores/iron.json index dd2164d9d..95a0b2a47 100644 --- a/src/main/resources/data/forge/tags/items/ores/iron.json +++ b/src/generated/resources/data/forge/tags/blocks/ores/iron.json @@ -3,4 +3,4 @@ "values": [ "minecraft:iron_ore" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/items/ores/lapis.json b/src/generated/resources/data/forge/tags/blocks/ores/lapis.json similarity index 97% rename from src/main/resources/data/forge/tags/items/ores/lapis.json rename to src/generated/resources/data/forge/tags/blocks/ores/lapis.json index 68d1a961a..798187c7e 100644 --- a/src/main/resources/data/forge/tags/items/ores/lapis.json +++ b/src/generated/resources/data/forge/tags/blocks/ores/lapis.json @@ -3,4 +3,4 @@ "values": [ "minecraft:lapis_ore" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/blocks/ores/quartz.json b/src/generated/resources/data/forge/tags/blocks/ores/quartz.json similarity index 97% rename from src/main/resources/data/forge/tags/blocks/ores/quartz.json rename to src/generated/resources/data/forge/tags/blocks/ores/quartz.json index 46ba04514..6c65cff93 100644 --- a/src/main/resources/data/forge/tags/blocks/ores/quartz.json +++ b/src/generated/resources/data/forge/tags/blocks/ores/quartz.json @@ -3,4 +3,4 @@ "values": [ "minecraft:nether_quartz_ore" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/blocks/ores/redstone.json b/src/generated/resources/data/forge/tags/blocks/ores/redstone.json similarity index 97% rename from src/main/resources/data/forge/tags/blocks/ores/redstone.json rename to src/generated/resources/data/forge/tags/blocks/ores/redstone.json index c88b68023..6ca00d17a 100644 --- a/src/main/resources/data/forge/tags/blocks/ores/redstone.json +++ b/src/generated/resources/data/forge/tags/blocks/ores/redstone.json @@ -3,4 +3,4 @@ "values": [ "minecraft:redstone_ore" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/blocks/stone.json b/src/generated/resources/data/forge/tags/blocks/stone.json similarity index 99% rename from src/main/resources/data/forge/tags/blocks/stone.json rename to src/generated/resources/data/forge/tags/blocks/stone.json index 108b95dc0..18296da08 100644 --- a/src/main/resources/data/forge/tags/blocks/stone.json +++ b/src/generated/resources/data/forge/tags/blocks/stone.json @@ -10,4 +10,4 @@ "minecraft:polished_diorite", "minecraft:polished_granite" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/blocks/storage_blocks.json b/src/generated/resources/data/forge/tags/blocks/storage_blocks.json similarity index 99% rename from src/main/resources/data/forge/tags/blocks/storage_blocks.json rename to src/generated/resources/data/forge/tags/blocks/storage_blocks.json index e3658b355..1c89a2110 100644 --- a/src/main/resources/data/forge/tags/blocks/storage_blocks.json +++ b/src/generated/resources/data/forge/tags/blocks/storage_blocks.json @@ -10,4 +10,4 @@ "#forge:storage_blocks/quartz", "#forge:storage_blocks/redstone" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/blocks/storage_blocks/coal.json b/src/generated/resources/data/forge/tags/blocks/storage_blocks/coal.json similarity index 97% rename from src/main/resources/data/forge/tags/blocks/storage_blocks/coal.json rename to src/generated/resources/data/forge/tags/blocks/storage_blocks/coal.json index 8654a02c2..dbe07ace8 100644 --- a/src/main/resources/data/forge/tags/blocks/storage_blocks/coal.json +++ b/src/generated/resources/data/forge/tags/blocks/storage_blocks/coal.json @@ -3,4 +3,4 @@ "values": [ "minecraft:coal_block" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/items/storage_blocks/diamond.json b/src/generated/resources/data/forge/tags/blocks/storage_blocks/diamond.json similarity index 97% rename from src/main/resources/data/forge/tags/items/storage_blocks/diamond.json rename to src/generated/resources/data/forge/tags/blocks/storage_blocks/diamond.json index 34d42073b..bc1977755 100644 --- a/src/main/resources/data/forge/tags/items/storage_blocks/diamond.json +++ b/src/generated/resources/data/forge/tags/blocks/storage_blocks/diamond.json @@ -3,4 +3,4 @@ "values": [ "minecraft:diamond_block" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/blocks/storage_blocks/emerald.json b/src/generated/resources/data/forge/tags/blocks/storage_blocks/emerald.json similarity index 97% rename from src/main/resources/data/forge/tags/blocks/storage_blocks/emerald.json rename to src/generated/resources/data/forge/tags/blocks/storage_blocks/emerald.json index e7cca299a..30e292c55 100644 --- a/src/main/resources/data/forge/tags/blocks/storage_blocks/emerald.json +++ b/src/generated/resources/data/forge/tags/blocks/storage_blocks/emerald.json @@ -3,4 +3,4 @@ "values": [ "minecraft:emerald_block" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/blocks/storage_blocks/gold.json b/src/generated/resources/data/forge/tags/blocks/storage_blocks/gold.json similarity index 97% rename from src/main/resources/data/forge/tags/blocks/storage_blocks/gold.json rename to src/generated/resources/data/forge/tags/blocks/storage_blocks/gold.json index 5cde185e0..863d47ad2 100644 --- a/src/main/resources/data/forge/tags/blocks/storage_blocks/gold.json +++ b/src/generated/resources/data/forge/tags/blocks/storage_blocks/gold.json @@ -3,4 +3,4 @@ "values": [ "minecraft:gold_block" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/blocks/storage_blocks/iron.json b/src/generated/resources/data/forge/tags/blocks/storage_blocks/iron.json similarity index 97% rename from src/main/resources/data/forge/tags/blocks/storage_blocks/iron.json rename to src/generated/resources/data/forge/tags/blocks/storage_blocks/iron.json index 7b50a707e..f9e01c6a9 100644 --- a/src/main/resources/data/forge/tags/blocks/storage_blocks/iron.json +++ b/src/generated/resources/data/forge/tags/blocks/storage_blocks/iron.json @@ -3,4 +3,4 @@ "values": [ "minecraft:iron_block" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/blocks/storage_blocks/lapis.json b/src/generated/resources/data/forge/tags/blocks/storage_blocks/lapis.json similarity index 97% rename from src/main/resources/data/forge/tags/blocks/storage_blocks/lapis.json rename to src/generated/resources/data/forge/tags/blocks/storage_blocks/lapis.json index b3e7a3e20..7de86cb6b 100644 --- a/src/main/resources/data/forge/tags/blocks/storage_blocks/lapis.json +++ b/src/generated/resources/data/forge/tags/blocks/storage_blocks/lapis.json @@ -3,4 +3,4 @@ "values": [ "minecraft:lapis_block" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/blocks/storage_blocks/quartz.json b/src/generated/resources/data/forge/tags/blocks/storage_blocks/quartz.json similarity index 97% rename from src/main/resources/data/forge/tags/blocks/storage_blocks/quartz.json rename to src/generated/resources/data/forge/tags/blocks/storage_blocks/quartz.json index 2bf357b8d..1321f2077 100644 --- a/src/main/resources/data/forge/tags/blocks/storage_blocks/quartz.json +++ b/src/generated/resources/data/forge/tags/blocks/storage_blocks/quartz.json @@ -3,4 +3,4 @@ "values": [ "minecraft:quartz_block" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/items/storage_blocks/redstone.json b/src/generated/resources/data/forge/tags/blocks/storage_blocks/redstone.json similarity index 97% rename from src/main/resources/data/forge/tags/items/storage_blocks/redstone.json rename to src/generated/resources/data/forge/tags/blocks/storage_blocks/redstone.json index 4b3277bca..f20a3ced2 100644 --- a/src/main/resources/data/forge/tags/items/storage_blocks/redstone.json +++ b/src/generated/resources/data/forge/tags/blocks/storage_blocks/redstone.json @@ -3,4 +3,4 @@ "values": [ "minecraft:redstone_block" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/items/chests.json b/src/generated/resources/data/forge/tags/items/chests.json similarity index 98% rename from src/main/resources/data/forge/tags/items/chests.json rename to src/generated/resources/data/forge/tags/items/chests.json index 5b2186a2e..edd007876 100644 --- a/src/main/resources/data/forge/tags/items/chests.json +++ b/src/generated/resources/data/forge/tags/items/chests.json @@ -5,4 +5,4 @@ "#forge:chests/trapped", "#forge:chests/wooden" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/blocks/chests/ender.json b/src/generated/resources/data/forge/tags/items/chests/ender.json similarity index 97% rename from src/main/resources/data/forge/tags/blocks/chests/ender.json rename to src/generated/resources/data/forge/tags/items/chests/ender.json index d7a16e96e..6416580a3 100644 --- a/src/main/resources/data/forge/tags/blocks/chests/ender.json +++ b/src/generated/resources/data/forge/tags/items/chests/ender.json @@ -3,4 +3,4 @@ "values": [ "minecraft:ender_chest" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/blocks/chests/trapped.json b/src/generated/resources/data/forge/tags/items/chests/trapped.json similarity index 97% rename from src/main/resources/data/forge/tags/blocks/chests/trapped.json rename to src/generated/resources/data/forge/tags/items/chests/trapped.json index 55c7aec17..7d4855ac2 100644 --- a/src/main/resources/data/forge/tags/blocks/chests/trapped.json +++ b/src/generated/resources/data/forge/tags/items/chests/trapped.json @@ -3,4 +3,4 @@ "values": [ "minecraft:trapped_chest" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/blocks/chests/wooden.json b/src/generated/resources/data/forge/tags/items/chests/wooden.json similarity index 97% rename from src/main/resources/data/forge/tags/blocks/chests/wooden.json rename to src/generated/resources/data/forge/tags/items/chests/wooden.json index 46ff16fc9..441d80f5b 100644 --- a/src/main/resources/data/forge/tags/blocks/chests/wooden.json +++ b/src/generated/resources/data/forge/tags/items/chests/wooden.json @@ -4,4 +4,4 @@ "minecraft:chest", "minecraft:trapped_chest" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/blocks/cobblestone.json b/src/generated/resources/data/forge/tags/items/cobblestone.json similarity index 98% rename from src/main/resources/data/forge/tags/blocks/cobblestone.json rename to src/generated/resources/data/forge/tags/items/cobblestone.json index a5c96d865..ae95e81b7 100644 --- a/src/main/resources/data/forge/tags/blocks/cobblestone.json +++ b/src/generated/resources/data/forge/tags/items/cobblestone.json @@ -5,4 +5,4 @@ "minecraft:infested_cobblestone", "minecraft:mossy_cobblestone" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/items/dusts.json b/src/generated/resources/data/forge/tags/items/dusts.json similarity index 54% rename from src/main/resources/data/forge/tags/items/dusts.json rename to src/generated/resources/data/forge/tags/items/dusts.json index 75dbf93bd..e0f272101 100644 --- a/src/main/resources/data/forge/tags/items/dusts.json +++ b/src/generated/resources/data/forge/tags/items/dusts.json @@ -1,8 +1,8 @@ { "replace": false, "values": [ + "#forge:dusts/glowstone", "#forge:dusts/prismarine", - "#forge:dusts/redstone", - "#forge:dusts/glowstone" + "#forge:dusts/redstone" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/items/dusts/glowstone.json b/src/generated/resources/data/forge/tags/items/dusts/glowstone.json similarity index 97% rename from src/main/resources/data/forge/tags/items/dusts/glowstone.json rename to src/generated/resources/data/forge/tags/items/dusts/glowstone.json index 826dbd18e..08d35494b 100644 --- a/src/main/resources/data/forge/tags/items/dusts/glowstone.json +++ b/src/generated/resources/data/forge/tags/items/dusts/glowstone.json @@ -3,4 +3,4 @@ "values": [ "minecraft:glowstone_dust" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/items/dusts/prismarine.json b/src/generated/resources/data/forge/tags/items/dusts/prismarine.json similarity index 97% rename from src/main/resources/data/forge/tags/items/dusts/prismarine.json rename to src/generated/resources/data/forge/tags/items/dusts/prismarine.json index 6ba76b045..09f011cae 100644 --- a/src/main/resources/data/forge/tags/items/dusts/prismarine.json +++ b/src/generated/resources/data/forge/tags/items/dusts/prismarine.json @@ -3,4 +3,4 @@ "values": [ "minecraft:prismarine_shard" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/items/dusts/redstone.json b/src/generated/resources/data/forge/tags/items/dusts/redstone.json similarity index 97% rename from src/main/resources/data/forge/tags/items/dusts/redstone.json rename to src/generated/resources/data/forge/tags/items/dusts/redstone.json index ffe4ba888..2703f553a 100644 --- a/src/main/resources/data/forge/tags/items/dusts/redstone.json +++ b/src/generated/resources/data/forge/tags/items/dusts/redstone.json @@ -3,4 +3,4 @@ "values": [ "minecraft:redstone" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/items/dyes.json b/src/generated/resources/data/forge/tags/items/dyes.json similarity index 99% rename from src/main/resources/data/forge/tags/items/dyes.json rename to src/generated/resources/data/forge/tags/items/dyes.json index 0dd70123e..3fa42b30c 100644 --- a/src/main/resources/data/forge/tags/items/dyes.json +++ b/src/generated/resources/data/forge/tags/items/dyes.json @@ -18,4 +18,4 @@ "#forge:dyes/orange", "#forge:dyes/white" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/items/dyes/black.json b/src/generated/resources/data/forge/tags/items/dyes/black.json similarity index 96% rename from src/main/resources/data/forge/tags/items/dyes/black.json rename to src/generated/resources/data/forge/tags/items/dyes/black.json index 7c1914cd3..7b3140494 100644 --- a/src/main/resources/data/forge/tags/items/dyes/black.json +++ b/src/generated/resources/data/forge/tags/items/dyes/black.json @@ -3,4 +3,4 @@ "values": [ "minecraft:ink_sac" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/items/dyes/blue.json b/src/generated/resources/data/forge/tags/items/dyes/blue.json similarity index 97% rename from src/main/resources/data/forge/tags/items/dyes/blue.json rename to src/generated/resources/data/forge/tags/items/dyes/blue.json index d0146f687..e46a64722 100644 --- a/src/main/resources/data/forge/tags/items/dyes/blue.json +++ b/src/generated/resources/data/forge/tags/items/dyes/blue.json @@ -3,4 +3,4 @@ "values": [ "minecraft:lapis_lazuli" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/items/dyes/brown.json b/src/generated/resources/data/forge/tags/items/dyes/brown.json similarity index 97% rename from src/main/resources/data/forge/tags/items/dyes/brown.json rename to src/generated/resources/data/forge/tags/items/dyes/brown.json index 56ecbbd0a..0ef71a376 100644 --- a/src/main/resources/data/forge/tags/items/dyes/brown.json +++ b/src/generated/resources/data/forge/tags/items/dyes/brown.json @@ -3,4 +3,4 @@ "values": [ "minecraft:cocoa_beans" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/items/dyes/cyan.json b/src/generated/resources/data/forge/tags/items/dyes/cyan.json similarity index 97% rename from src/main/resources/data/forge/tags/items/dyes/cyan.json rename to src/generated/resources/data/forge/tags/items/dyes/cyan.json index 06215afb9..384cb9c64 100644 --- a/src/main/resources/data/forge/tags/items/dyes/cyan.json +++ b/src/generated/resources/data/forge/tags/items/dyes/cyan.json @@ -3,4 +3,4 @@ "values": [ "minecraft:cyan_dye" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/items/dyes/gray.json b/src/generated/resources/data/forge/tags/items/dyes/gray.json similarity index 97% rename from src/main/resources/data/forge/tags/items/dyes/gray.json rename to src/generated/resources/data/forge/tags/items/dyes/gray.json index 8c6e48e8a..3b7b4389d 100644 --- a/src/main/resources/data/forge/tags/items/dyes/gray.json +++ b/src/generated/resources/data/forge/tags/items/dyes/gray.json @@ -3,4 +3,4 @@ "values": [ "minecraft:gray_dye" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/items/dyes/green.json b/src/generated/resources/data/forge/tags/items/dyes/green.json similarity index 97% rename from src/main/resources/data/forge/tags/items/dyes/green.json rename to src/generated/resources/data/forge/tags/items/dyes/green.json index f2072a97c..096286bf2 100644 --- a/src/main/resources/data/forge/tags/items/dyes/green.json +++ b/src/generated/resources/data/forge/tags/items/dyes/green.json @@ -3,4 +3,4 @@ "values": [ "minecraft:green_dye" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/items/dyes/light_blue.json b/src/generated/resources/data/forge/tags/items/dyes/light_blue.json similarity index 97% rename from src/main/resources/data/forge/tags/items/dyes/light_blue.json rename to src/generated/resources/data/forge/tags/items/dyes/light_blue.json index b483f2ad4..f280f4fe7 100644 --- a/src/main/resources/data/forge/tags/items/dyes/light_blue.json +++ b/src/generated/resources/data/forge/tags/items/dyes/light_blue.json @@ -3,4 +3,4 @@ "values": [ "minecraft:light_blue_dye" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/items/dyes/light_gray.json b/src/generated/resources/data/forge/tags/items/dyes/light_gray.json similarity index 97% rename from src/main/resources/data/forge/tags/items/dyes/light_gray.json rename to src/generated/resources/data/forge/tags/items/dyes/light_gray.json index 811c46a8a..82c02bce0 100644 --- a/src/main/resources/data/forge/tags/items/dyes/light_gray.json +++ b/src/generated/resources/data/forge/tags/items/dyes/light_gray.json @@ -3,4 +3,4 @@ "values": [ "minecraft:light_gray_dye" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/items/dyes/lime.json b/src/generated/resources/data/forge/tags/items/dyes/lime.json similarity index 97% rename from src/main/resources/data/forge/tags/items/dyes/lime.json rename to src/generated/resources/data/forge/tags/items/dyes/lime.json index e7916df31..415993059 100644 --- a/src/main/resources/data/forge/tags/items/dyes/lime.json +++ b/src/generated/resources/data/forge/tags/items/dyes/lime.json @@ -3,4 +3,4 @@ "values": [ "minecraft:lime_dye" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/items/dyes/magenta.json b/src/generated/resources/data/forge/tags/items/dyes/magenta.json similarity index 97% rename from src/main/resources/data/forge/tags/items/dyes/magenta.json rename to src/generated/resources/data/forge/tags/items/dyes/magenta.json index 2c7129d2e..810b6e547 100644 --- a/src/main/resources/data/forge/tags/items/dyes/magenta.json +++ b/src/generated/resources/data/forge/tags/items/dyes/magenta.json @@ -3,4 +3,4 @@ "values": [ "minecraft:magenta_dye" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/items/dyes/orange.json b/src/generated/resources/data/forge/tags/items/dyes/orange.json similarity index 97% rename from src/main/resources/data/forge/tags/items/dyes/orange.json rename to src/generated/resources/data/forge/tags/items/dyes/orange.json index 390bdfc72..9939b6169 100644 --- a/src/main/resources/data/forge/tags/items/dyes/orange.json +++ b/src/generated/resources/data/forge/tags/items/dyes/orange.json @@ -3,4 +3,4 @@ "values": [ "minecraft:orange_dye" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/items/dyes/pink.json b/src/generated/resources/data/forge/tags/items/dyes/pink.json similarity index 97% rename from src/main/resources/data/forge/tags/items/dyes/pink.json rename to src/generated/resources/data/forge/tags/items/dyes/pink.json index bc35aa765..c5172b16b 100644 --- a/src/main/resources/data/forge/tags/items/dyes/pink.json +++ b/src/generated/resources/data/forge/tags/items/dyes/pink.json @@ -3,4 +3,4 @@ "values": [ "minecraft:pink_dye" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/items/dyes/purple.json b/src/generated/resources/data/forge/tags/items/dyes/purple.json similarity index 97% rename from src/main/resources/data/forge/tags/items/dyes/purple.json rename to src/generated/resources/data/forge/tags/items/dyes/purple.json index 0a95460a6..cd6a8fef0 100644 --- a/src/main/resources/data/forge/tags/items/dyes/purple.json +++ b/src/generated/resources/data/forge/tags/items/dyes/purple.json @@ -3,4 +3,4 @@ "values": [ "minecraft:purple_dye" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/items/dyes/red.json b/src/generated/resources/data/forge/tags/items/dyes/red.json similarity index 96% rename from src/main/resources/data/forge/tags/items/dyes/red.json rename to src/generated/resources/data/forge/tags/items/dyes/red.json index 3e8be73fa..68b06807f 100644 --- a/src/main/resources/data/forge/tags/items/dyes/red.json +++ b/src/generated/resources/data/forge/tags/items/dyes/red.json @@ -3,4 +3,4 @@ "values": [ "minecraft:red_dye" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/items/dyes/white.json b/src/generated/resources/data/forge/tags/items/dyes/white.json similarity index 97% rename from src/main/resources/data/forge/tags/items/dyes/white.json rename to src/generated/resources/data/forge/tags/items/dyes/white.json index 9fabaa41c..b2017b20c 100644 --- a/src/main/resources/data/forge/tags/items/dyes/white.json +++ b/src/generated/resources/data/forge/tags/items/dyes/white.json @@ -3,4 +3,4 @@ "values": [ "minecraft:bone_meal" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/items/dyes/yellow.json b/src/generated/resources/data/forge/tags/items/dyes/yellow.json similarity index 97% rename from src/main/resources/data/forge/tags/items/dyes/yellow.json rename to src/generated/resources/data/forge/tags/items/dyes/yellow.json index 04e067b68..343377909 100644 --- a/src/main/resources/data/forge/tags/items/dyes/yellow.json +++ b/src/generated/resources/data/forge/tags/items/dyes/yellow.json @@ -3,4 +3,4 @@ "values": [ "minecraft:yellow_dye" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/items/fence_gates.json b/src/generated/resources/data/forge/tags/items/fence_gates.json similarity index 97% rename from src/main/resources/data/forge/tags/items/fence_gates.json rename to src/generated/resources/data/forge/tags/items/fence_gates.json index 4fc8670fd..9508f9133 100644 --- a/src/main/resources/data/forge/tags/items/fence_gates.json +++ b/src/generated/resources/data/forge/tags/items/fence_gates.json @@ -3,4 +3,4 @@ "values": [ "#forge:fence_gates/wooden" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/blocks/fence_gates/wooden.json b/src/generated/resources/data/forge/tags/items/fence_gates/wooden.json similarity index 99% rename from src/main/resources/data/forge/tags/blocks/fence_gates/wooden.json rename to src/generated/resources/data/forge/tags/items/fence_gates/wooden.json index 7b8030778..d798a4c73 100644 --- a/src/main/resources/data/forge/tags/blocks/fence_gates/wooden.json +++ b/src/generated/resources/data/forge/tags/items/fence_gates/wooden.json @@ -8,4 +8,4 @@ "minecraft:acacia_fence_gate", "minecraft:dark_oak_fence_gate" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/items/fences.json b/src/generated/resources/data/forge/tags/items/fences.json similarity index 98% rename from src/main/resources/data/forge/tags/items/fences.json rename to src/generated/resources/data/forge/tags/items/fences.json index a7e4edcd8..55a5f8542 100644 --- a/src/main/resources/data/forge/tags/items/fences.json +++ b/src/generated/resources/data/forge/tags/items/fences.json @@ -4,4 +4,4 @@ "#forge:fences/nether_brick", "#forge:fences/wooden" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/blocks/fences/nether_brick.json b/src/generated/resources/data/forge/tags/items/fences/nether_brick.json similarity index 97% rename from src/main/resources/data/forge/tags/blocks/fences/nether_brick.json rename to src/generated/resources/data/forge/tags/items/fences/nether_brick.json index 498841169..c6f0bd761 100644 --- a/src/main/resources/data/forge/tags/blocks/fences/nether_brick.json +++ b/src/generated/resources/data/forge/tags/items/fences/nether_brick.json @@ -3,4 +3,4 @@ "values": [ "minecraft:nether_brick_fence" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/blocks/fences/wooden.json b/src/generated/resources/data/forge/tags/items/fences/wooden.json similarity index 99% rename from src/main/resources/data/forge/tags/blocks/fences/wooden.json rename to src/generated/resources/data/forge/tags/items/fences/wooden.json index af77eddec..893271d26 100644 --- a/src/main/resources/data/forge/tags/blocks/fences/wooden.json +++ b/src/generated/resources/data/forge/tags/items/fences/wooden.json @@ -8,4 +8,4 @@ "minecraft:acacia_fence", "minecraft:dark_oak_fence" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/items/gems.json b/src/generated/resources/data/forge/tags/items/gems.json similarity index 67% rename from src/main/resources/data/forge/tags/items/gems.json rename to src/generated/resources/data/forge/tags/items/gems.json index 2f4991c0f..d9b2a55e9 100644 --- a/src/main/resources/data/forge/tags/items/gems.json +++ b/src/generated/resources/data/forge/tags/items/gems.json @@ -3,8 +3,8 @@ "values": [ "#forge:gems/diamond", "#forge:gems/emerald", - "#forge:gems/quartz", "#forge:gems/lapis", - "#forge:gems/prismarine" + "#forge:gems/prismarine", + "#forge:gems/quartz" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/items/gems/diamond.json b/src/generated/resources/data/forge/tags/items/gems/diamond.json similarity index 96% rename from src/main/resources/data/forge/tags/items/gems/diamond.json rename to src/generated/resources/data/forge/tags/items/gems/diamond.json index 0b7f52244..a0b7317d8 100644 --- a/src/main/resources/data/forge/tags/items/gems/diamond.json +++ b/src/generated/resources/data/forge/tags/items/gems/diamond.json @@ -3,4 +3,4 @@ "values": [ "minecraft:diamond" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/items/gems/emerald.json b/src/generated/resources/data/forge/tags/items/gems/emerald.json similarity index 96% rename from src/main/resources/data/forge/tags/items/gems/emerald.json rename to src/generated/resources/data/forge/tags/items/gems/emerald.json index 0f3bdf92c..838caf0bd 100644 --- a/src/main/resources/data/forge/tags/items/gems/emerald.json +++ b/src/generated/resources/data/forge/tags/items/gems/emerald.json @@ -3,4 +3,4 @@ "values": [ "minecraft:emerald" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/items/gems/lapis.json b/src/generated/resources/data/forge/tags/items/gems/lapis.json similarity index 97% rename from src/main/resources/data/forge/tags/items/gems/lapis.json rename to src/generated/resources/data/forge/tags/items/gems/lapis.json index d0146f687..e46a64722 100644 --- a/src/main/resources/data/forge/tags/items/gems/lapis.json +++ b/src/generated/resources/data/forge/tags/items/gems/lapis.json @@ -3,4 +3,4 @@ "values": [ "minecraft:lapis_lazuli" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/items/gems/prismarine.json b/src/generated/resources/data/forge/tags/items/gems/prismarine.json similarity index 97% rename from src/main/resources/data/forge/tags/items/gems/prismarine.json rename to src/generated/resources/data/forge/tags/items/gems/prismarine.json index 965cd0ab0..6e3777b09 100644 --- a/src/main/resources/data/forge/tags/items/gems/prismarine.json +++ b/src/generated/resources/data/forge/tags/items/gems/prismarine.json @@ -3,4 +3,4 @@ "values": [ "minecraft:prismarine_crystals" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/items/gems/quartz.json b/src/generated/resources/data/forge/tags/items/gems/quartz.json similarity index 96% rename from src/main/resources/data/forge/tags/items/gems/quartz.json rename to src/generated/resources/data/forge/tags/items/gems/quartz.json index 585fa5593..49ac1fd15 100644 --- a/src/main/resources/data/forge/tags/items/gems/quartz.json +++ b/src/generated/resources/data/forge/tags/items/gems/quartz.json @@ -3,4 +3,4 @@ "values": [ "minecraft:quartz" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/items/ingots.json b/src/generated/resources/data/forge/tags/items/ingots.json similarity index 98% rename from src/main/resources/data/forge/tags/items/ingots.json rename to src/generated/resources/data/forge/tags/items/ingots.json index 00914e8aa..076b5c1ea 100644 --- a/src/main/resources/data/forge/tags/items/ingots.json +++ b/src/generated/resources/data/forge/tags/items/ingots.json @@ -6,4 +6,4 @@ "#forge:ingots/brick", "#forge:ingots/nether_brick" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/items/ingots/brick.json b/src/generated/resources/data/forge/tags/items/ingots/brick.json similarity index 96% rename from src/main/resources/data/forge/tags/items/ingots/brick.json rename to src/generated/resources/data/forge/tags/items/ingots/brick.json index 5bca236a7..b7eabaa84 100644 --- a/src/main/resources/data/forge/tags/items/ingots/brick.json +++ b/src/generated/resources/data/forge/tags/items/ingots/brick.json @@ -3,4 +3,4 @@ "values": [ "minecraft:brick" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/items/ingots/gold.json b/src/generated/resources/data/forge/tags/items/ingots/gold.json similarity index 97% rename from src/main/resources/data/forge/tags/items/ingots/gold.json rename to src/generated/resources/data/forge/tags/items/ingots/gold.json index 74a63e9c2..d88f9571a 100644 --- a/src/main/resources/data/forge/tags/items/ingots/gold.json +++ b/src/generated/resources/data/forge/tags/items/ingots/gold.json @@ -3,4 +3,4 @@ "values": [ "minecraft:gold_ingot" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/items/ingots/iron.json b/src/generated/resources/data/forge/tags/items/ingots/iron.json similarity index 97% rename from src/main/resources/data/forge/tags/items/ingots/iron.json rename to src/generated/resources/data/forge/tags/items/ingots/iron.json index 5e89bbc7b..549adc471 100644 --- a/src/main/resources/data/forge/tags/items/ingots/iron.json +++ b/src/generated/resources/data/forge/tags/items/ingots/iron.json @@ -3,4 +3,4 @@ "values": [ "minecraft:iron_ingot" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/items/ingots/nether_brick.json b/src/generated/resources/data/forge/tags/items/ingots/nether_brick.json similarity index 97% rename from src/main/resources/data/forge/tags/items/ingots/nether_brick.json rename to src/generated/resources/data/forge/tags/items/ingots/nether_brick.json index d13b0207c..709e0c77b 100644 --- a/src/main/resources/data/forge/tags/items/ingots/nether_brick.json +++ b/src/generated/resources/data/forge/tags/items/ingots/nether_brick.json @@ -3,4 +3,4 @@ "values": [ "minecraft:nether_brick" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/items/music_discs.json b/src/generated/resources/data/forge/tags/items/music_discs.json similarity index 99% rename from src/main/resources/data/forge/tags/items/music_discs.json rename to src/generated/resources/data/forge/tags/items/music_discs.json index 03bdf1c03..2809edff2 100644 --- a/src/main/resources/data/forge/tags/items/music_discs.json +++ b/src/generated/resources/data/forge/tags/items/music_discs.json @@ -14,4 +14,4 @@ "minecraft:music_disc_11", "minecraft:music_disc_wait" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/items/nuggets.json b/src/generated/resources/data/forge/tags/items/nuggets.json similarity index 97% rename from src/main/resources/data/forge/tags/items/nuggets.json rename to src/generated/resources/data/forge/tags/items/nuggets.json index 66a7ecba6..dfe53a6a1 100644 --- a/src/main/resources/data/forge/tags/items/nuggets.json +++ b/src/generated/resources/data/forge/tags/items/nuggets.json @@ -4,4 +4,4 @@ "#forge:nuggets/iron", "#forge:nuggets/gold" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/items/nuggets/gold.json b/src/generated/resources/data/forge/tags/items/nuggets/gold.json similarity index 97% rename from src/main/resources/data/forge/tags/items/nuggets/gold.json rename to src/generated/resources/data/forge/tags/items/nuggets/gold.json index 3c978eae9..2fe99bd9d 100644 --- a/src/main/resources/data/forge/tags/items/nuggets/gold.json +++ b/src/generated/resources/data/forge/tags/items/nuggets/gold.json @@ -3,4 +3,4 @@ "values": [ "minecraft:gold_nugget" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/items/nuggets/iron.json b/src/generated/resources/data/forge/tags/items/nuggets/iron.json similarity index 97% rename from src/main/resources/data/forge/tags/items/nuggets/iron.json rename to src/generated/resources/data/forge/tags/items/nuggets/iron.json index 2e6bd5ffa..50e3f7a19 100644 --- a/src/main/resources/data/forge/tags/items/nuggets/iron.json +++ b/src/generated/resources/data/forge/tags/items/nuggets/iron.json @@ -3,4 +3,4 @@ "values": [ "minecraft:iron_nugget" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/blocks/ores.json b/src/generated/resources/data/forge/tags/items/ores.json similarity index 99% rename from src/main/resources/data/forge/tags/blocks/ores.json rename to src/generated/resources/data/forge/tags/items/ores.json index a889d08c3..45c1b4f22 100644 --- a/src/main/resources/data/forge/tags/blocks/ores.json +++ b/src/generated/resources/data/forge/tags/items/ores.json @@ -1,13 +1,13 @@ { "replace": false, "values": [ - "#forge:ores/iron", - "#forge:ores/gold", "#forge:ores/coal", + "#forge:ores/diamond", + "#forge:ores/emerald", + "#forge:ores/gold", + "#forge:ores/iron", "#forge:ores/lapis", "#forge:ores/redstone", - "#forge:ores/emerald", - "#forge:ores/diamond", "#forge:ores/quartz" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/blocks/ores/coal.json b/src/generated/resources/data/forge/tags/items/ores/coal.json similarity index 97% rename from src/main/resources/data/forge/tags/blocks/ores/coal.json rename to src/generated/resources/data/forge/tags/items/ores/coal.json index 7c71d7807..337900da5 100644 --- a/src/main/resources/data/forge/tags/blocks/ores/coal.json +++ b/src/generated/resources/data/forge/tags/items/ores/coal.json @@ -3,4 +3,4 @@ "values": [ "minecraft:coal_ore" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/items/ores/diamond.json b/src/generated/resources/data/forge/tags/items/ores/diamond.json similarity index 97% rename from src/main/resources/data/forge/tags/items/ores/diamond.json rename to src/generated/resources/data/forge/tags/items/ores/diamond.json index 072563e40..927a2c7f9 100644 --- a/src/main/resources/data/forge/tags/items/ores/diamond.json +++ b/src/generated/resources/data/forge/tags/items/ores/diamond.json @@ -3,4 +3,4 @@ "values": [ "minecraft:diamond_ore" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/blocks/ores/emerald.json b/src/generated/resources/data/forge/tags/items/ores/emerald.json similarity index 97% rename from src/main/resources/data/forge/tags/blocks/ores/emerald.json rename to src/generated/resources/data/forge/tags/items/ores/emerald.json index 3972c84a1..4ad12c477 100644 --- a/src/main/resources/data/forge/tags/blocks/ores/emerald.json +++ b/src/generated/resources/data/forge/tags/items/ores/emerald.json @@ -3,4 +3,4 @@ "values": [ "minecraft:emerald_ore" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/items/ores/gold.json b/src/generated/resources/data/forge/tags/items/ores/gold.json similarity index 97% rename from src/main/resources/data/forge/tags/items/ores/gold.json rename to src/generated/resources/data/forge/tags/items/ores/gold.json index ebbc8168c..ec42ee5f2 100644 --- a/src/main/resources/data/forge/tags/items/ores/gold.json +++ b/src/generated/resources/data/forge/tags/items/ores/gold.json @@ -3,4 +3,4 @@ "values": [ "minecraft:gold_ore" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/blocks/ores/iron.json b/src/generated/resources/data/forge/tags/items/ores/iron.json similarity index 97% rename from src/main/resources/data/forge/tags/blocks/ores/iron.json rename to src/generated/resources/data/forge/tags/items/ores/iron.json index dd2164d9d..95a0b2a47 100644 --- a/src/main/resources/data/forge/tags/blocks/ores/iron.json +++ b/src/generated/resources/data/forge/tags/items/ores/iron.json @@ -3,4 +3,4 @@ "values": [ "minecraft:iron_ore" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/blocks/ores/lapis.json b/src/generated/resources/data/forge/tags/items/ores/lapis.json similarity index 97% rename from src/main/resources/data/forge/tags/blocks/ores/lapis.json rename to src/generated/resources/data/forge/tags/items/ores/lapis.json index 68d1a961a..798187c7e 100644 --- a/src/main/resources/data/forge/tags/blocks/ores/lapis.json +++ b/src/generated/resources/data/forge/tags/items/ores/lapis.json @@ -3,4 +3,4 @@ "values": [ "minecraft:lapis_ore" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/items/ores/quartz.json b/src/generated/resources/data/forge/tags/items/ores/quartz.json similarity index 97% rename from src/main/resources/data/forge/tags/items/ores/quartz.json rename to src/generated/resources/data/forge/tags/items/ores/quartz.json index 46ba04514..6c65cff93 100644 --- a/src/main/resources/data/forge/tags/items/ores/quartz.json +++ b/src/generated/resources/data/forge/tags/items/ores/quartz.json @@ -3,4 +3,4 @@ "values": [ "minecraft:nether_quartz_ore" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/items/ores/redstone.json b/src/generated/resources/data/forge/tags/items/ores/redstone.json similarity index 97% rename from src/main/resources/data/forge/tags/items/ores/redstone.json rename to src/generated/resources/data/forge/tags/items/ores/redstone.json index c88b68023..6ca00d17a 100644 --- a/src/main/resources/data/forge/tags/items/ores/redstone.json +++ b/src/generated/resources/data/forge/tags/items/ores/redstone.json @@ -3,4 +3,4 @@ "values": [ "minecraft:redstone_ore" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/items/rods.json b/src/generated/resources/data/forge/tags/items/rods.json similarity index 97% rename from src/main/resources/data/forge/tags/items/rods.json rename to src/generated/resources/data/forge/tags/items/rods.json index ddd4ad922..6833a3b5c 100644 --- a/src/main/resources/data/forge/tags/items/rods.json +++ b/src/generated/resources/data/forge/tags/items/rods.json @@ -4,4 +4,4 @@ "#forge:rods/blaze", "#forge:rods/wooden" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/items/rods/blaze.json b/src/generated/resources/data/forge/tags/items/rods/blaze.json similarity index 97% rename from src/main/resources/data/forge/tags/items/rods/blaze.json rename to src/generated/resources/data/forge/tags/items/rods/blaze.json index 96bb55e93..8cbb7bc03 100644 --- a/src/main/resources/data/forge/tags/items/rods/blaze.json +++ b/src/generated/resources/data/forge/tags/items/rods/blaze.json @@ -3,4 +3,4 @@ "values": [ "minecraft:blaze_rod" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/items/rods/wooden.json b/src/generated/resources/data/forge/tags/items/rods/wooden.json similarity index 96% rename from src/main/resources/data/forge/tags/items/rods/wooden.json rename to src/generated/resources/data/forge/tags/items/rods/wooden.json index 90f5f079e..390efe692 100644 --- a/src/main/resources/data/forge/tags/items/rods/wooden.json +++ b/src/generated/resources/data/forge/tags/items/rods/wooden.json @@ -3,4 +3,4 @@ "values": [ "minecraft:stick" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/items/stone.json b/src/generated/resources/data/forge/tags/items/stone.json similarity index 87% rename from src/main/resources/data/forge/tags/items/stone.json rename to src/generated/resources/data/forge/tags/items/stone.json index 839d23326..18296da08 100644 --- a/src/main/resources/data/forge/tags/items/stone.json +++ b/src/generated/resources/data/forge/tags/items/stone.json @@ -4,9 +4,10 @@ "minecraft:andesite", "minecraft:diorite", "minecraft:granite", + "minecraft:infested_stone", "minecraft:stone", "minecraft:polished_andesite", "minecraft:polished_diorite", "minecraft:polished_granite" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/items/storage_blocks.json b/src/generated/resources/data/forge/tags/items/storage_blocks.json similarity index 99% rename from src/main/resources/data/forge/tags/items/storage_blocks.json rename to src/generated/resources/data/forge/tags/items/storage_blocks.json index e3658b355..1c89a2110 100644 --- a/src/main/resources/data/forge/tags/items/storage_blocks.json +++ b/src/generated/resources/data/forge/tags/items/storage_blocks.json @@ -10,4 +10,4 @@ "#forge:storage_blocks/quartz", "#forge:storage_blocks/redstone" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/items/storage_blocks/coal.json b/src/generated/resources/data/forge/tags/items/storage_blocks/coal.json similarity index 97% rename from src/main/resources/data/forge/tags/items/storage_blocks/coal.json rename to src/generated/resources/data/forge/tags/items/storage_blocks/coal.json index 8654a02c2..dbe07ace8 100644 --- a/src/main/resources/data/forge/tags/items/storage_blocks/coal.json +++ b/src/generated/resources/data/forge/tags/items/storage_blocks/coal.json @@ -3,4 +3,4 @@ "values": [ "minecraft:coal_block" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/blocks/storage_blocks/diamond.json b/src/generated/resources/data/forge/tags/items/storage_blocks/diamond.json similarity index 97% rename from src/main/resources/data/forge/tags/blocks/storage_blocks/diamond.json rename to src/generated/resources/data/forge/tags/items/storage_blocks/diamond.json index 34d42073b..bc1977755 100644 --- a/src/main/resources/data/forge/tags/blocks/storage_blocks/diamond.json +++ b/src/generated/resources/data/forge/tags/items/storage_blocks/diamond.json @@ -3,4 +3,4 @@ "values": [ "minecraft:diamond_block" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/items/storage_blocks/emerald.json b/src/generated/resources/data/forge/tags/items/storage_blocks/emerald.json similarity index 97% rename from src/main/resources/data/forge/tags/items/storage_blocks/emerald.json rename to src/generated/resources/data/forge/tags/items/storage_blocks/emerald.json index e7cca299a..30e292c55 100644 --- a/src/main/resources/data/forge/tags/items/storage_blocks/emerald.json +++ b/src/generated/resources/data/forge/tags/items/storage_blocks/emerald.json @@ -3,4 +3,4 @@ "values": [ "minecraft:emerald_block" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/items/storage_blocks/gold.json b/src/generated/resources/data/forge/tags/items/storage_blocks/gold.json similarity index 97% rename from src/main/resources/data/forge/tags/items/storage_blocks/gold.json rename to src/generated/resources/data/forge/tags/items/storage_blocks/gold.json index 5cde185e0..863d47ad2 100644 --- a/src/main/resources/data/forge/tags/items/storage_blocks/gold.json +++ b/src/generated/resources/data/forge/tags/items/storage_blocks/gold.json @@ -3,4 +3,4 @@ "values": [ "minecraft:gold_block" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/items/storage_blocks/iron.json b/src/generated/resources/data/forge/tags/items/storage_blocks/iron.json similarity index 97% rename from src/main/resources/data/forge/tags/items/storage_blocks/iron.json rename to src/generated/resources/data/forge/tags/items/storage_blocks/iron.json index 7b50a707e..f9e01c6a9 100644 --- a/src/main/resources/data/forge/tags/items/storage_blocks/iron.json +++ b/src/generated/resources/data/forge/tags/items/storage_blocks/iron.json @@ -3,4 +3,4 @@ "values": [ "minecraft:iron_block" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/items/storage_blocks/lapis.json b/src/generated/resources/data/forge/tags/items/storage_blocks/lapis.json similarity index 97% rename from src/main/resources/data/forge/tags/items/storage_blocks/lapis.json rename to src/generated/resources/data/forge/tags/items/storage_blocks/lapis.json index b3e7a3e20..7de86cb6b 100644 --- a/src/main/resources/data/forge/tags/items/storage_blocks/lapis.json +++ b/src/generated/resources/data/forge/tags/items/storage_blocks/lapis.json @@ -3,4 +3,4 @@ "values": [ "minecraft:lapis_block" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/items/storage_blocks/quartz.json b/src/generated/resources/data/forge/tags/items/storage_blocks/quartz.json similarity index 97% rename from src/main/resources/data/forge/tags/items/storage_blocks/quartz.json rename to src/generated/resources/data/forge/tags/items/storage_blocks/quartz.json index 2bf357b8d..1321f2077 100644 --- a/src/main/resources/data/forge/tags/items/storage_blocks/quartz.json +++ b/src/generated/resources/data/forge/tags/items/storage_blocks/quartz.json @@ -3,4 +3,4 @@ "values": [ "minecraft:quartz_block" ] -} +} \ No newline at end of file diff --git a/src/main/resources/data/forge/tags/blocks/storage_blocks/redstone.json b/src/generated/resources/data/forge/tags/items/storage_blocks/redstone.json similarity index 97% rename from src/main/resources/data/forge/tags/blocks/storage_blocks/redstone.json rename to src/generated/resources/data/forge/tags/items/storage_blocks/redstone.json index 4b3277bca..f20a3ced2 100644 --- a/src/main/resources/data/forge/tags/blocks/storage_blocks/redstone.json +++ b/src/generated/resources/data/forge/tags/items/storage_blocks/redstone.json @@ -3,4 +3,4 @@ "values": [ "minecraft:redstone_block" ] -} +} \ No newline at end of file diff --git a/src/main/java/net/minecraftforge/common/ForgeMod.java b/src/main/java/net/minecraftforge/common/ForgeMod.java index a2d88313e..fe567e50a 100644 --- a/src/main/java/net/minecraftforge/common/ForgeMod.java +++ b/src/main/java/net/minecraftforge/common/ForgeMod.java @@ -44,13 +44,17 @@ import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; import net.minecraft.client.Minecraft; +import net.minecraft.data.DataGenerator; import net.minecraft.nbt.CompoundNBT; import net.minecraft.resources.SimpleReloadableResourceManager; import net.minecraft.world.storage.SaveHandler; import net.minecraft.world.storage.WorldInfo; import net.minecraftforge.api.distmarker.Dist; +import net.minecraftforge.common.data.ForgeBlockTagsProvider; +import net.minecraftforge.common.data.ForgeItemTagsProvider; import net.minecraftforge.common.model.animation.CapabilityAnimation; import net.minecraftforge.energy.CapabilityEnergy; +import net.minecraftforge.event.GatherDataEvent; import net.minecraftforge.fluids.capability.CapabilityFluidHandler; import net.minecraftforge.items.CapabilityItemHandler; import net.minecraftforge.resource.ISelectiveResourceReloadListener; @@ -95,6 +99,7 @@ public class ForgeMod implements WorldPersistenceHooks.WorldPersistenceHook modEventBus.addListener(this::preInit); modEventBus.addListener(this::postInit); modEventBus.addListener(this::onAvailable); + modEventBus.addListener(this::gatherData); MinecraftForge.EVENT_BUS.addListener(this::serverStarting); MinecraftForge.EVENT_BUS.addListener(this::playerLogin); MinecraftForge.EVENT_BUS.addListener(this::serverStopping); @@ -140,7 +145,11 @@ public class ForgeMod implements WorldPersistenceHooks.WorldPersistenceHook } // Brandings need to recompute when language changes - DistExecutor.runWhenOn(Dist.CLIENT, () -> () -> ((SimpleReloadableResourceManager)Minecraft.getInstance().getResourceManager()).func_219534_a((ISelectiveResourceReloadListener) BrandingControl::clearCaches)); + DistExecutor.runWhenOn(Dist.CLIENT, () -> () -> { + Minecraft mc = Minecraft.getInstance(); + if (mc != null) + ((SimpleReloadableResourceManager)mc.getResourceManager()).func_219534_a((ISelectiveResourceReloadListener) BrandingControl::clearCaches); + }); } /* @@ -223,4 +232,15 @@ public class ForgeMod implements WorldPersistenceHooks.WorldPersistenceHook { return ForgeVersion.MOD_ID; } + + public void gatherData(GatherDataEvent event) + { + DataGenerator gen = event.getGenerator(); + + if (event.includeServer()) + { + gen.addProvider(new ForgeBlockTagsProvider(gen)); + gen.addProvider(new ForgeItemTagsProvider(gen)); + } + } } diff --git a/src/main/java/net/minecraftforge/common/Tags.java b/src/main/java/net/minecraftforge/common/Tags.java index a464ceb6b..5d2f24c1a 100644 --- a/src/main/java/net/minecraftforge/common/Tags.java +++ b/src/main/java/net/minecraftforge/common/Tags.java @@ -98,7 +98,7 @@ public class Tags public static final Tag FENCE_GATES = tag("fence_gates"); public static final Tag FENCE_GATES_WOODEN = tag("fence_gates/wooden"); public static final Tag FENCES = tag("fences"); - public static final Tag FENCES_NETHER_BRRICK = tag("fences/nether_brick"); + public static final Tag FENCES_NETHER_BRICK = tag("fences/nether_brick"); public static final Tag FENCES_WOODEN = tag("fences/wooden"); public static final Tag GEMS = tag("gems"); public static final Tag GEMS_DIAMOND = tag("gems/diamond"); diff --git a/src/main/java/net/minecraftforge/common/data/ForgeBlockTagsProvider.java b/src/main/java/net/minecraftforge/common/data/ForgeBlockTagsProvider.java new file mode 100644 index 000000000..3bbbbd437 --- /dev/null +++ b/src/main/java/net/minecraftforge/common/data/ForgeBlockTagsProvider.java @@ -0,0 +1,75 @@ +/* + * Minecraft Forge + * Copyright (c) 2016-2019. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation version 2.1 + * of the License. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + */ + +package net.minecraftforge.common.data; + +import net.minecraft.data.DataGenerator; +import net.minecraft.block.Blocks; +import net.minecraft.data.BlockTagsProvider; + +import static net.minecraftforge.common.Tags.Blocks.*; + +public class ForgeBlockTagsProvider extends BlockTagsProvider +{ + public ForgeBlockTagsProvider(DataGenerator gen) + { + super(gen); + } + + @Override + public void registerTags() + { + getBuilder(CHESTS).add(CHESTS_ENDER, CHESTS_TRAPPED, CHESTS_WOODEN); + getBuilder(CHESTS_ENDER).add(Blocks.ENDER_CHEST); + getBuilder(CHESTS_TRAPPED).add(Blocks.TRAPPED_CHEST); + getBuilder(CHESTS_WOODEN).add(Blocks.CHEST, Blocks.TRAPPED_CHEST); + getBuilder(COBBLESTONE).add(Blocks.COBBLESTONE, Blocks.INFESTED_COBBLESTONE, Blocks.MOSSY_COBBLESTONE); + getBuilder(DIRT).add(Blocks.DIRT, Blocks.COARSE_DIRT, Blocks.PODZOL); + getBuilder(FENCE_GATES).add(FENCE_GATES_WOODEN); + getBuilder(FENCE_GATES_WOODEN).add(Blocks.OAK_FENCE_GATE, Blocks.SPRUCE_FENCE_GATE, Blocks.BIRCH_FENCE_GATE, Blocks.JUNGLE_FENCE_GATE, Blocks.ACACIA_FENCE_GATE, Blocks.DARK_OAK_FENCE_GATE); + getBuilder(FENCES).add(FENCES_NETHER_BRICK, FENCES_WOODEN); + getBuilder(FENCES_NETHER_BRICK).add(Blocks.NETHER_BRICK_FENCE); + getBuilder(FENCES_WOODEN).add(Blocks.OAK_FENCE, Blocks.SPRUCE_FENCE, Blocks.BIRCH_FENCE, Blocks.JUNGLE_FENCE, Blocks.ACACIA_FENCE, Blocks.DARK_OAK_FENCE); + getBuilder(ORES).add(ORES_COAL, ORES_DIAMOND, ORES_EMERALD, ORES_GOLD, ORES_IRON, ORES_LAPIS, ORES_REDSTONE, ORES_QUARTZ); + getBuilder(ORES_COAL).add(Blocks.COAL_ORE); + getBuilder(ORES_DIAMOND).add(Blocks.DIAMOND_ORE); + getBuilder(ORES_EMERALD).add(Blocks.EMERALD_ORE); + getBuilder(ORES_GOLD).add(Blocks.GOLD_ORE); + getBuilder(ORES_IRON).add(Blocks.IRON_ORE); + getBuilder(ORES_LAPIS).add(Blocks.LAPIS_ORE); + getBuilder(ORES_QUARTZ).add(Blocks.NETHER_QUARTZ_ORE); + getBuilder(ORES_REDSTONE).add(Blocks.REDSTONE_ORE); + getBuilder(STONE).add(Blocks.ANDESITE, Blocks.DIORITE, Blocks.GRANITE, Blocks.INFESTED_STONE, Blocks.STONE, Blocks.POLISHED_ANDESITE, Blocks.POLISHED_DIORITE, Blocks.POLISHED_GRANITE); + getBuilder(STORAGE_BLOCKS).add(STORAGE_BLOCKS_COAL, STORAGE_BLOCKS_DIAMOND, STORAGE_BLOCKS_EMERALD, STORAGE_BLOCKS_GOLD, STORAGE_BLOCKS_IRON, STORAGE_BLOCKS_LAPIS, STORAGE_BLOCKS_QUARTZ, STORAGE_BLOCKS_REDSTONE); + getBuilder(STORAGE_BLOCKS_COAL).add(Blocks.COAL_BLOCK); + getBuilder(STORAGE_BLOCKS_DIAMOND).add(Blocks.DIAMOND_BLOCK); + getBuilder(STORAGE_BLOCKS_EMERALD).add(Blocks.EMERALD_BLOCK); + getBuilder(STORAGE_BLOCKS_GOLD).add(Blocks.GOLD_BLOCK); + getBuilder(STORAGE_BLOCKS_IRON).add(Blocks.IRON_BLOCK); + getBuilder(STORAGE_BLOCKS_LAPIS).add(Blocks.LAPIS_BLOCK); + getBuilder(STORAGE_BLOCKS_QUARTZ).add(Blocks.QUARTZ_BLOCK); + getBuilder(STORAGE_BLOCKS_REDSTONE).add(Blocks.REDSTONE_BLOCK); + } + + @Override + public String getName() + { + return "Forge Block Tags"; + } +} diff --git a/src/main/java/net/minecraftforge/common/data/ForgeItemTagsProvider.java b/src/main/java/net/minecraftforge/common/data/ForgeItemTagsProvider.java new file mode 100644 index 000000000..03688905c --- /dev/null +++ b/src/main/java/net/minecraftforge/common/data/ForgeItemTagsProvider.java @@ -0,0 +1,112 @@ +/* + * Minecraft Forge + * Copyright (c) 2016-2019. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation version 2.1 + * of the License. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + */ + +package net.minecraftforge.common.data; + +import net.minecraft.data.DataGenerator; +import net.minecraft.data.ItemTagsProvider; +import net.minecraft.item.Items; +import net.minecraftforge.common.Tags; + +public class ForgeItemTagsProvider extends ItemTagsProvider +{ + public ForgeItemTagsProvider(DataGenerator gen) + { + super(gen); + } + + @Override + public void registerTags() + { + copy(Tags.Blocks.CHESTS, Tags.Items.CHESTS); + copy(Tags.Blocks.CHESTS_ENDER, Tags.Items.CHESTS_ENDER); + copy(Tags.Blocks.CHESTS_TRAPPED, Tags.Items.CHESTS_TRAPPED); + copy(Tags.Blocks.CHESTS_WOODEN, Tags.Items.CHESTS_WOODEN); + copy(Tags.Blocks.COBBLESTONE, Tags.Items.COBBLESTONE); + getBuilder(Tags.Items.DUSTS).add(Tags.Items.DUSTS_GLOWSTONE, Tags.Items.DUSTS_PRISMARINE, Tags.Items.DUSTS_REDSTONE); + getBuilder(Tags.Items.DUSTS_GLOWSTONE).add(Items.GLOWSTONE_DUST); + getBuilder(Tags.Items.DUSTS_PRISMARINE).add(Items.PRISMARINE_SHARD); + getBuilder(Tags.Items.DUSTS_REDSTONE).add(Items.REDSTONE); + getBuilder(Tags.Items.DYES).add(Tags.Items.DYES_BLACK, Tags.Items.DYES_RED, Tags.Items.DYES_GREEN, Tags.Items.DYES_BROWN, Tags.Items.DYES_BLUE, Tags.Items.DYES_PURPLE, Tags.Items.DYES_CYAN, Tags.Items.DYES_LIGHT_GRAY, Tags.Items.DYES_GRAY, Tags.Items.DYES_PINK, Tags.Items.DYES_LIME, Tags.Items.DYES_YELLOW, Tags.Items.DYES_LIGHT_BLUE, Tags.Items.DYES_MAGENTA, Tags.Items.DYES_ORANGE, Tags.Items.DYES_WHITE); + getBuilder(Tags.Items.DYES_BLACK).add(Items.INK_SAC); + getBuilder(Tags.Items.DYES_BLUE).add(Items.LAPIS_LAZULI); + getBuilder(Tags.Items.DYES_BROWN).add(Items.COCOA_BEANS); + getBuilder(Tags.Items.DYES_CYAN).add(Items.CYAN_DYE); + getBuilder(Tags.Items.DYES_GRAY).add(Items.GRAY_DYE); + getBuilder(Tags.Items.DYES_GREEN).add(Items.field_222079_lj); + getBuilder(Tags.Items.DYES_LIGHT_BLUE).add(Items.LIGHT_BLUE_DYE); + getBuilder(Tags.Items.DYES_LIGHT_GRAY).add(Items.LIGHT_GRAY_DYE); + getBuilder(Tags.Items.DYES_LIME).add(Items.LIME_DYE); + getBuilder(Tags.Items.DYES_MAGENTA).add(Items.MAGENTA_DYE); + getBuilder(Tags.Items.DYES_ORANGE).add(Items.ORANGE_DYE); + getBuilder(Tags.Items.DYES_PINK).add(Items.PINK_DYE); + getBuilder(Tags.Items.DYES_PURPLE).add(Items.PURPLE_DYE); + getBuilder(Tags.Items.DYES_RED).add(Items.field_222078_li); + getBuilder(Tags.Items.DYES_WHITE).add(Items.BONE_MEAL); + getBuilder(Tags.Items.DYES_YELLOW).add(Items.field_222081_ls); + copy(Tags.Blocks.FENCE_GATES, Tags.Items.FENCE_GATES); + copy(Tags.Blocks.FENCE_GATES_WOODEN, Tags.Items.FENCE_GATES_WOODEN); + copy(Tags.Blocks.FENCES, Tags.Items.FENCES); + copy(Tags.Blocks.FENCES_NETHER_BRICK, Tags.Items.FENCES_NETHER_BRICK); + copy(Tags.Blocks.FENCES_WOODEN, Tags.Items.FENCES_WOODEN); + getBuilder(Tags.Items.GEMS).add(Tags.Items.GEMS_DIAMOND, Tags.Items.GEMS_EMERALD, Tags.Items.GEMS_LAPIS, Tags.Items.GEMS_PRISMARINE, Tags.Items.GEMS_QUARTZ); + getBuilder(Tags.Items.GEMS_DIAMOND).add(Items.DIAMOND); + getBuilder(Tags.Items.GEMS_EMERALD).add(Items.EMERALD); + getBuilder(Tags.Items.GEMS_LAPIS).add(Items.LAPIS_LAZULI); + getBuilder(Tags.Items.GEMS_PRISMARINE).add(Items.PRISMARINE_CRYSTALS); + getBuilder(Tags.Items.GEMS_QUARTZ).add(Items.QUARTZ); + getBuilder(Tags.Items.INGOTS).add(Tags.Items.INGOTS_IRON, Tags.Items.INGOTS_GOLD, Tags.Items.INGOTS_BRICK, Tags.Items.INGOTS_NETHER_BRICK); + getBuilder(Tags.Items.INGOTS_BRICK).add(Items.BRICK); + getBuilder(Tags.Items.INGOTS_GOLD).add(Items.GOLD_INGOT); + getBuilder(Tags.Items.INGOTS_IRON).add(Items.IRON_INGOT); + getBuilder(Tags.Items.INGOTS_NETHER_BRICK).add(Items.NETHER_BRICK); + getBuilder(Tags.Items.MUSIC_DISCS).add(Items.MUSIC_DISC_13, Items.MUSIC_DISC_CAT, Items.MUSIC_DISC_BLOCKS, Items.MUSIC_DISC_CHIRP, Items.MUSIC_DISC_FAR, Items.MUSIC_DISC_MALL, Items.MUSIC_DISC_MELLOHI, Items.MUSIC_DISC_STAL, Items.MUSIC_DISC_STRAD, Items.MUSIC_DISC_WARD, Items.MUSIC_DISC_11, Items.MUSIC_DISC_WAIT); + getBuilder(Tags.Items.NUGGETS).add(Tags.Items.NUGGETS_IRON, Tags.Items.NUGGETS_GOLD); + getBuilder(Tags.Items.NUGGETS_IRON).add(Items.IRON_NUGGET); + getBuilder(Tags.Items.NUGGETS_GOLD).add(Items.GOLD_NUGGET); + copy(Tags.Blocks.ORES, Tags.Items.ORES); + copy(Tags.Blocks.ORES_COAL, Tags.Items.ORES_COAL); + copy(Tags.Blocks.ORES_DIAMOND, Tags.Items.ORES_DIAMOND); + copy(Tags.Blocks.ORES_EMERALD, Tags.Items.ORES_EMERALD); + copy(Tags.Blocks.ORES_GOLD, Tags.Items.ORES_GOLD); + copy(Tags.Blocks.ORES_IRON, Tags.Items.ORES_IRON); + copy(Tags.Blocks.ORES_LAPIS, Tags.Items.ORES_LAPIS); + copy(Tags.Blocks.ORES_QUARTZ, Tags.Items.ORES_QUARTZ); + copy(Tags.Blocks.ORES_REDSTONE, Tags.Items.ORES_REDSTONE); + getBuilder(Tags.Items.RODS).add(Tags.Items.RODS_BLAZE, Tags.Items.RODS_WOODEN); + getBuilder(Tags.Items.RODS_BLAZE).add(Items.BLAZE_ROD); + getBuilder(Tags.Items.RODS_WOODEN).add(Items.STICK); + copy(Tags.Blocks.STONE, Tags.Items.STONE); + copy(Tags.Blocks.STORAGE_BLOCKS, Tags.Items.STORAGE_BLOCKS); + copy(Tags.Blocks.STORAGE_BLOCKS_COAL, Tags.Items.STORAGE_BLOCKS_COAL); + copy(Tags.Blocks.STORAGE_BLOCKS_DIAMOND, Tags.Items.STORAGE_BLOCKS_DIAMOND); + copy(Tags.Blocks.STORAGE_BLOCKS_EMERALD, Tags.Items.STORAGE_BLOCKS_EMERALD); + copy(Tags.Blocks.STORAGE_BLOCKS_GOLD, Tags.Items.STORAGE_BLOCKS_GOLD); + copy(Tags.Blocks.STORAGE_BLOCKS_IRON, Tags.Items.STORAGE_BLOCKS_IRON); + copy(Tags.Blocks.STORAGE_BLOCKS_LAPIS, Tags.Items.STORAGE_BLOCKS_LAPIS); + copy(Tags.Blocks.STORAGE_BLOCKS_QUARTZ, Tags.Items.STORAGE_BLOCKS_QUARTZ); + copy(Tags.Blocks.STORAGE_BLOCKS_REDSTONE, Tags.Items.STORAGE_BLOCKS_REDSTONE); + } + + @Override + public String getName() + { + return "Forge Item Tags"; + } +} diff --git a/src/main/java/net/minecraftforge/event/GatherDataEvent.java b/src/main/java/net/minecraftforge/event/GatherDataEvent.java new file mode 100644 index 000000000..87007cb82 --- /dev/null +++ b/src/main/java/net/minecraftforge/event/GatherDataEvent.java @@ -0,0 +1,50 @@ +/* + * Minecraft Forge + * Copyright (c) 2016-2019. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation version 2.1 + * of the License. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + */ + +package net.minecraftforge.event; + +import net.minecraft.data.DataGenerator; +import net.minecraftforge.eventbus.api.Event; + +public class GatherDataEvent extends Event +{ + private final DataGenerator generator; + private final boolean server; + private final boolean client; + private final boolean dev; + private final boolean reports; + private final boolean validate; + + public GatherDataEvent(DataGenerator gen, boolean server, boolean client, boolean dev, boolean reports, boolean validate) + { + this.generator = gen; + this.server = server; + this.client = client; + this.dev = dev; + this.reports = reports; + this.validate = validate; + } + + public DataGenerator getGenerator() { return this.generator; } + public boolean includeServer() { return this.server; } + public boolean includeClient() { return this.client; } + public boolean includeDev() { return this.dev; } + public boolean includeReports() { return this.reports; } + public boolean validate() { return this.validate; } +} diff --git a/src/main/resources/forge.exc b/src/main/resources/forge.exc index 96cc3a2dc..80fcb5fc3 100644 --- a/src/main/resources/forge.exc +++ b/src/main/resources/forge.exc @@ -48,6 +48,8 @@ net/minecraft/resources/ResourcePackInfo.(Ljava/lang/String;ZLjava/util/fu net/minecraft/server/management/PlayerInteractionManager.removeBlock(Lnet/minecraft/util/math/BlockPos;Z)Z=|p_180235_1_,canHarvest +net/minecraft/tags/Tag.(Lnet/minecraft/util/ResourceLocation;Ljava/util/Collection;ZZ)V=|p_i48224_1_,p_i48224_2_,p_i48224_3_,replace + net/minecraft/tileentity/BannerPattern.create(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lnet/minecraft/item/ItemStack;)Lnet/minecraft/tileentity/BannerPattern;=|enumName,p_i47246_3_,p_i47246_4_,p_i47246_5_ net/minecraft/tileentity/BannerPattern.create(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/tileentity/BannerPattern;=|enumName,p_i47247_3_,p_i47247_4_,p_i47247_5_,p_i47247_6_,p_i47247_7_ diff --git a/src/userdev/java/net/minecraftforge/userdev/FMLDevDataLaunchProvider.java b/src/userdev/java/net/minecraftforge/userdev/FMLDevDataLaunchProvider.java new file mode 100644 index 000000000..0e719da0e --- /dev/null +++ b/src/userdev/java/net/minecraftforge/userdev/FMLDevDataLaunchProvider.java @@ -0,0 +1,67 @@ +/* + * Minecraft Forge + * Copyright (c) 2016-2019. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation version 2.1 + * of the License. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + */ + +package net.minecraftforge.userdev; + +import cpw.mods.modlauncher.api.ILaunchHandlerService; +import cpw.mods.modlauncher.api.ITransformingClassLoader; +import net.minecraftforge.api.distmarker.Dist; + +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; + +import java.util.concurrent.Callable; + +import static net.minecraftforge.fml.loading.LogMarkers.CORE; + +public class FMLDevDataLaunchProvider extends FMLDevServerLaunchProvider implements ILaunchHandlerService +{ + private static final Logger LOGGER = LogManager.getLogger(); + + @Override + public String name() + { + return "fmldevdata"; + } + + @Override + public Callable launchService(String[] arguments, ITransformingClassLoader launchClassLoader) + { + return () -> { + LOGGER.debug(CORE, "Launching minecraft in {} with arguments {}", launchClassLoader, arguments); + super.beforeStart(launchClassLoader); + launchClassLoader.addTargetPackageFilter(getPackagePredicate()); + Thread.currentThread().setContextClassLoader(launchClassLoader.getInstance()); + Class.forName("net.minecraft.data.Main", true, launchClassLoader.getInstance()).getMethod("main", String[].class).invoke(null, (Object)arguments); + return null; + }; + } + + @Override + public Dist getDist() + { + return Dist.CLIENT; + } + + @Override + protected String getNaming() { + return "srg"; + } + +} diff --git a/src/userdev/java/net/minecraftforge/userdev/LaunchTesting.java b/src/userdev/java/net/minecraftforge/userdev/LaunchTesting.java index 80e0d4868..522588e1e 100644 --- a/src/userdev/java/net/minecraftforge/userdev/LaunchTesting.java +++ b/src/userdev/java/net/minecraftforge/userdev/LaunchTesting.java @@ -89,7 +89,10 @@ public class LaunchTesting } } - if (target.equals("fmldevclient") || target.equals("fmldevserver") || target.equals("fmluserdevclient") || target.equals("fmluserdevserver")) { + if (Arrays.asList( + "fmldevclient", "fmldevserver", "fmldevdata", + "fmluserdevclient", "fmluserdevserver" + ).contains(target)) { //nop } else { throw new IllegalArgumentException("Unknown value for 'target' property: " + target); diff --git a/src/userdev/resources/META-INF/services/cpw.mods.modlauncher.api.ILaunchHandlerService b/src/userdev/resources/META-INF/services/cpw.mods.modlauncher.api.ILaunchHandlerService index c24a0021a..81e1deada 100644 --- a/src/userdev/resources/META-INF/services/cpw.mods.modlauncher.api.ILaunchHandlerService +++ b/src/userdev/resources/META-INF/services/cpw.mods.modlauncher.api.ILaunchHandlerService @@ -2,3 +2,4 @@ net.minecraftforge.userdev.FMLUserdevClientLaunchProvider net.minecraftforge.userdev.FMLUserdevServerLaunchProvider net.minecraftforge.userdev.FMLDevClientLaunchProvider net.minecraftforge.userdev.FMLDevServerLaunchProvider +net.minecraftforge.userdev.FMLDevDataLaunchProvider