Skip to content

Commit

Permalink
more datagening
Browse files Browse the repository at this point in the history
  • Loading branch information
Thepigcat76 committed Oct 11, 2024
1 parent 6cfa665 commit 387051b
Show file tree
Hide file tree
Showing 4 changed files with 32 additions and 4 deletions.
Original file line number Diff line number Diff line change
@@ -1,12 +1,13 @@
package com.leclowndu93150.carbort.datagen;

import com.leclowndu93150.carbort.Carbort;
import net.minecraft.data.PackOutput;
import net.neoforged.neoforge.client.model.generators.BlockStateProvider;
import net.neoforged.neoforge.common.data.ExistingFileHelper;

public class CBBlockStateProvider extends BlockStateProvider {
public CBBlockStateProvider(PackOutput output, String modid, ExistingFileHelper exFileHelper) {
super(output, modid, exFileHelper);
public CBBlockStateProvider(PackOutput output, ExistingFileHelper exFileHelper) {
super(output, Carbort.MODID, exFileHelper);
}

@Override
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,11 @@
import com.leclowndu93150.carbort.Carbort;
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 net.neoforged.neoforge.registries.DeferredBlock;
import org.jetbrains.annotations.Nullable;

import java.util.concurrent.CompletableFuture;
Expand All @@ -18,4 +21,16 @@ public CBBlockTagProvider(PackOutput output, CompletableFuture<HolderLookup.Prov
protected void addTags(HolderLookup.Provider provider) {

}

private void tag(TagKey<Block> blockTagKey, Block... blocks) {
tag(blockTagKey).add(blocks);
}

@SafeVarargs
private void tag(TagKey<Block> blockTagKey, DeferredBlock<? extends Block>... blocks) {
IntrinsicTagAppender<Block> tag = tag(blockTagKey);
for (DeferredBlock<? extends Block> block : blocks) {
tag.add(block.get());
}
}
}
Original file line number Diff line number Diff line change
@@ -1,12 +1,13 @@
package com.leclowndu93150.carbort.datagen;

import com.leclowndu93150.carbort.Carbort;
import net.minecraft.data.PackOutput;
import net.neoforged.neoforge.client.model.generators.ItemModelProvider;
import net.neoforged.neoforge.common.data.ExistingFileHelper;

public class CBItemModelProvider extends ItemModelProvider {
public CBItemModelProvider(PackOutput output, String modid, ExistingFileHelper existingFileHelper) {
super(output, modid, existingFileHelper);
public CBItemModelProvider(PackOutput output, ExistingFileHelper existingFileHelper) {
super(output, Carbort.MODID, existingFileHelper);
}

@Override
Expand Down
11 changes: 11 additions & 0 deletions src/main/java/com/leclowndu93150/carbort/datagen/DataGatherer.java
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
import com.leclowndu93150.carbort.Carbort;
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.ExistingFileHelper;
Expand All @@ -17,8 +18,18 @@ public static void gatherData(GatherDataEvent event) {
DataGenerator generator = event.getGenerator();
ExistingFileHelper fileHelper = event.getExistingFileHelper();
CompletableFuture<HolderLookup.Provider> lookupProvider = event.getLookupProvider();
PackOutput packOutput = generator.getPackOutput();

boolean assets = event.includeClient();
boolean data = event.includeServer();

generator.addProvider(assets, new CBBlockStateProvider(packOutput, fileHelper));
generator.addProvider(assets, new CBItemModelProvider(packOutput, fileHelper));
generator.addProvider(assets, new CBLangProvider(packOutput));

generator.addProvider(data, new CBRecipesProvider(packOutput, lookupProvider));
CBBlockTagProvider blockTagProvider = new CBBlockTagProvider(packOutput, lookupProvider, fileHelper);
generator.addProvider(data, blockTagProvider);
generator.addProvider(data, new CBItemTagProvider(packOutput, lookupProvider, blockTagProvider.contentsGetter()));
}
}

0 comments on commit 387051b

Please sign in to comment.