adds datagen for block and item tags and replaces 7 block textures

This commit is contained in:
2026-01-17 10:25:50 -05:00
parent d2db0f5311
commit 0a13f07689
18 changed files with 838 additions and 0 deletions
@@ -1,13 +1,17 @@
package net.cmr.jurassicrevived.datagen;
import net.cmr.jurassicrevived.Constants;
import net.minecraft.core.HolderLookup;
import net.minecraft.data.DataGenerator;
import net.minecraft.data.PackOutput;
import net.neoforged.bus.api.SubscribeEvent;
import net.neoforged.fml.common.EventBusSubscriber;
import net.neoforged.neoforge.common.data.BlockTagsProvider;
import net.neoforged.neoforge.common.data.ExistingFileHelper;
import net.neoforged.neoforge.data.event.GatherDataEvent;
import java.util.concurrent.CompletableFuture;
@EventBusSubscriber(modid = Constants.MOD_ID)
public class DataGenerators {
@@ -16,8 +20,13 @@ public class DataGenerators {
DataGenerator generator = event.getGenerator();
PackOutput packOutput = generator.getPackOutput();
ExistingFileHelper existingFileHelper = event.getExistingFileHelper();
CompletableFuture<HolderLookup.Provider> lookupProvider = event.getLookupProvider();
generator.addProvider(event.includeClient(), new NeoForgeBlockStateProvider(packOutput, existingFileHelper));
generator.addProvider(event.includeClient(), new NeoForgeItemModelProvider(packOutput, existingFileHelper));
BlockTagsProvider blockTagsProvider = new NeoForgeBlockTagProvider(packOutput, lookupProvider, existingFileHelper);
generator.addProvider(event.includeServer(), blockTagsProvider);
generator.addProvider(event.includeServer(), new NeoForgeItemTagProvider(packOutput, lookupProvider, blockTagsProvider.contentsGetter(), existingFileHelper));
}
}
@@ -0,0 +1,28 @@
package net.cmr.jurassicrevived.datagen;
import net.cmr.jurassicrevived.Constants;
import net.minecraft.core.HolderLookup;
import net.minecraft.data.PackOutput;
import net.minecraft.tags.TagKey;
import net.minecraft.world.level.block.Block;
import net.neoforged.neoforge.common.data.BlockTagsProvider;
import net.neoforged.neoforge.common.data.ExistingFileHelper;
import org.jetbrains.annotations.Nullable;
import java.util.concurrent.CompletableFuture;
public class NeoForgeBlockTagProvider extends BlockTagsProvider implements ModBlockTagProvider.BlockTagHelper {
public NeoForgeBlockTagProvider(PackOutput output, CompletableFuture<HolderLookup.Provider> lookupProvider, @Nullable ExistingFileHelper existingFileHelper) {
super(output, lookupProvider, Constants.MOD_ID, existingFileHelper);
}
@Override
protected void addTags(HolderLookup.Provider provider) {
ModBlockTagProvider.registerBlockTags(this);
}
@Override
public void tag(TagKey<Block> tag, Block... blocks) {
tag(tag).add(blocks);
}
}
@@ -0,0 +1,30 @@
package net.cmr.jurassicrevived.datagen;
import net.cmr.jurassicrevived.Constants;
import net.minecraft.core.HolderLookup;
import net.minecraft.data.PackOutput;
import net.minecraft.data.tags.ItemTagsProvider;
import net.minecraft.tags.TagKey;
import net.minecraft.world.item.Item;
import net.minecraft.world.level.block.Block;
import net.neoforged.neoforge.common.data.ExistingFileHelper;
import org.jetbrains.annotations.Nullable;
import java.util.concurrent.CompletableFuture;
public class NeoForgeItemTagProvider extends ItemTagsProvider implements ModItemTagProvider.ItemTagHelper {
public NeoForgeItemTagProvider(PackOutput output, CompletableFuture<HolderLookup.Provider> lookupProvider, CompletableFuture<TagLookup<Block>> blockTags, @Nullable ExistingFileHelper existingFileHelper) {
super(output, lookupProvider, blockTags, Constants.MOD_ID, existingFileHelper);
}
@Override
protected void addTags(HolderLookup.Provider provider) {
ModItemTagProvider.registerItemTags(this);
}
@Override
public void tag(TagKey<Item> tag, Item... items) {
tag(tag).add(items);
}
}