Ported loot table data gen.

This commit is contained in:
2026-05-01 18:33:45 +01:00
parent 2d49d2ffb3
commit 4668456cc5
3 changed files with 9 additions and 7 deletions

View File

@ -26,7 +26,7 @@ public class DataGenerators {
generator.addProvider(event.includeClient(), new ModItemModelProvider(generator, existingFileHelper));
generator.addProvider(event.includeClient(), new ModSoundDefinitionsProvider(generator, existingFileHelper));
generator.addProvider(event.includeServer(), new ModLootTableProvider(generator));
generator.addProvider(event.includeServer(), new ModLootTableProvider(generator, lookupProvider));
generator.addProvider(event.includeServer(), new ModWorldGenProvider(generator, lookupProvider));
}
}

View File

@ -1,17 +1,17 @@
package dev.micle.firefly_bush_backport.data.loot;
import dev.micle.firefly_bush_backport.block.ModBlocks;
import net.minecraft.core.HolderLookup;
import net.minecraft.data.loot.BlockLootSubProvider;
import net.minecraft.world.flag.FeatureFlags;
import net.minecraft.world.level.block.Block;
import net.minecraftforge.registries.RegistryObject;
import org.jetbrains.annotations.NotNull;
import java.util.Set;
public class ModBlockLootTableProvider extends BlockLootSubProvider {
public ModBlockLootTableProvider() {
super(Set.of(), FeatureFlags.REGISTRY.allFlags());
public ModBlockLootTableProvider(HolderLookup.Provider provider) {
super(Set.of(), FeatureFlags.REGISTRY.allFlags(), provider);
}
@Override
@ -21,6 +21,6 @@ public class ModBlockLootTableProvider extends BlockLootSubProvider {
@Override
protected @NotNull Iterable<Block> getKnownBlocks() {
return ModBlocks.BLOCKS.getEntries().stream().map(RegistryObject::get)::iterator;
return ModBlocks.BLOCKS.getEntries().stream().map(x -> (Block)x.value())::iterator;
}
}

View File

@ -1,17 +1,19 @@
package dev.micle.firefly_bush_backport.data.server;
import dev.micle.firefly_bush_backport.data.loot.ModBlockLootTableProvider;
import net.minecraft.core.HolderLookup;
import net.minecraft.data.DataGenerator;
import net.minecraft.data.loot.LootTableProvider;
import net.minecraft.world.level.storage.loot.parameters.LootContextParamSets;
import java.util.List;
import java.util.Set;
import java.util.concurrent.CompletableFuture;
public class ModLootTableProvider extends LootTableProvider {
public ModLootTableProvider(DataGenerator generator) {
public ModLootTableProvider(DataGenerator generator, CompletableFuture<HolderLookup.Provider> registries) {
super(generator.getPackOutput(), Set.of(), List.of(
new LootTableProvider.SubProviderEntry(ModBlockLootTableProvider::new, LootContextParamSets.BLOCK)
));
), registries);
}
}