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 ModItemModelProvider(generator, existingFileHelper));
generator.addProvider(event.includeClient(), new ModSoundDefinitionsProvider(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)); generator.addProvider(event.includeServer(), new ModWorldGenProvider(generator, lookupProvider));
} }
} }

View File

@ -1,17 +1,17 @@
package dev.micle.firefly_bush_backport.data.loot; package dev.micle.firefly_bush_backport.data.loot;
import dev.micle.firefly_bush_backport.block.ModBlocks; import dev.micle.firefly_bush_backport.block.ModBlocks;
import net.minecraft.core.HolderLookup;
import net.minecraft.data.loot.BlockLootSubProvider; import net.minecraft.data.loot.BlockLootSubProvider;
import net.minecraft.world.flag.FeatureFlags; import net.minecraft.world.flag.FeatureFlags;
import net.minecraft.world.level.block.Block; import net.minecraft.world.level.block.Block;
import net.minecraftforge.registries.RegistryObject;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;
import java.util.Set; import java.util.Set;
public class ModBlockLootTableProvider extends BlockLootSubProvider { public class ModBlockLootTableProvider extends BlockLootSubProvider {
public ModBlockLootTableProvider() { public ModBlockLootTableProvider(HolderLookup.Provider provider) {
super(Set.of(), FeatureFlags.REGISTRY.allFlags()); super(Set.of(), FeatureFlags.REGISTRY.allFlags(), provider);
} }
@Override @Override
@ -21,6 +21,6 @@ public class ModBlockLootTableProvider extends BlockLootSubProvider {
@Override @Override
protected @NotNull Iterable<Block> getKnownBlocks() { 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; package dev.micle.firefly_bush_backport.data.server;
import dev.micle.firefly_bush_backport.data.loot.ModBlockLootTableProvider; import dev.micle.firefly_bush_backport.data.loot.ModBlockLootTableProvider;
import net.minecraft.core.HolderLookup;
import net.minecraft.data.DataGenerator; import net.minecraft.data.DataGenerator;
import net.minecraft.data.loot.LootTableProvider; import net.minecraft.data.loot.LootTableProvider;
import net.minecraft.world.level.storage.loot.parameters.LootContextParamSets; import net.minecraft.world.level.storage.loot.parameters.LootContextParamSets;
import java.util.List; import java.util.List;
import java.util.Set; import java.util.Set;
import java.util.concurrent.CompletableFuture;
public class ModLootTableProvider extends LootTableProvider { public class ModLootTableProvider extends LootTableProvider {
public ModLootTableProvider(DataGenerator generator) { public ModLootTableProvider(DataGenerator generator, CompletableFuture<HolderLookup.Provider> registries) {
super(generator.getPackOutput(), Set.of(), List.of( super(generator.getPackOutput(), Set.of(), List.of(
new LootTableProvider.SubProviderEntry(ModBlockLootTableProvider::new, LootContextParamSets.BLOCK) new LootTableProvider.SubProviderEntry(ModBlockLootTableProvider::new, LootContextParamSets.BLOCK)
)); ), registries);
} }
} }