Ported data generation. Fixed proxy and main class.
This commit is contained in:
@ -15,16 +15,10 @@ public class FireflyBushBackport {
|
||||
private static FMLJavaModLoadingContext fmlJavaModLoadingContext;
|
||||
private static IProxy proxy;
|
||||
|
||||
public FireflyBushBackport(FMLJavaModLoadingContext context) {
|
||||
fmlJavaModLoadingContext = context;
|
||||
|
||||
public FireflyBushBackport() {
|
||||
proxy = DistExecutor.safeRunForDist(
|
||||
() -> Proxy.Client::new,
|
||||
() -> Proxy.Server::new
|
||||
);
|
||||
}
|
||||
|
||||
public static FMLJavaModLoadingContext getFMLJavaModLoadingContext() {
|
||||
return fmlJavaModLoadingContext;
|
||||
}
|
||||
}
|
||||
|
||||
@ -4,16 +4,12 @@ import dev.micle.firefly_bush_backport.FireflyBushBackport;
|
||||
import dev.micle.firefly_bush_backport.data.client.ModBlockStateProvider;
|
||||
import dev.micle.firefly_bush_backport.data.client.ModItemModelProvider;
|
||||
import dev.micle.firefly_bush_backport.data.client.ModSoundDefinitionsProvider;
|
||||
import dev.micle.firefly_bush_backport.data.server.ModLootTableProvider;
|
||||
import dev.micle.firefly_bush_backport.data.server.ModWorldGenProvider;
|
||||
import net.minecraft.core.HolderLookup;
|
||||
import dev.micle.firefly_bush_backport.data.loot.ModLootTableProvider;
|
||||
import net.minecraft.data.DataGenerator;
|
||||
import net.minecraftforge.common.data.ExistingFileHelper;
|
||||
import net.minecraftforge.data.event.GatherDataEvent;
|
||||
import net.minecraftforge.eventbus.api.SubscribeEvent;
|
||||
import net.minecraftforge.fml.common.Mod;
|
||||
|
||||
import java.util.concurrent.CompletableFuture;
|
||||
import net.minecraftforge.fml.event.lifecycle.GatherDataEvent;
|
||||
|
||||
@Mod.EventBusSubscriber(modid = FireflyBushBackport.MOD_ID, bus = Mod.EventBusSubscriber.Bus.MOD)
|
||||
public class DataGenerators {
|
||||
@ -21,13 +17,11 @@ public class DataGenerators {
|
||||
public static void gatherData(GatherDataEvent event) {
|
||||
DataGenerator generator = event.getGenerator();
|
||||
ExistingFileHelper existingFileHelper = event.getExistingFileHelper();
|
||||
CompletableFuture<HolderLookup.Provider> lookupProvider = event.getLookupProvider();
|
||||
|
||||
generator.addProvider(event.includeClient(), new ModBlockStateProvider(generator, existingFileHelper));
|
||||
generator.addProvider(event.includeClient(), new ModItemModelProvider(generator, existingFileHelper));
|
||||
generator.addProvider(event.includeClient(), new ModSoundDefinitionsProvider(generator, existingFileHelper));
|
||||
generator.addProvider(new ModBlockStateProvider(generator, existingFileHelper));
|
||||
generator.addProvider(new ModItemModelProvider(generator, existingFileHelper));
|
||||
generator.addProvider(new ModSoundDefinitionsProvider(generator, existingFileHelper));
|
||||
|
||||
generator.addProvider(event.includeServer(), new ModLootTableProvider(generator));
|
||||
generator.addProvider(event.includeServer(), new ModWorldGenProvider(generator, lookupProvider));
|
||||
generator.addProvider(new ModLootTableProvider(generator));
|
||||
}
|
||||
}
|
||||
|
||||
@ -2,18 +2,18 @@ package dev.micle.firefly_bush_backport.data.client;
|
||||
|
||||
import dev.micle.firefly_bush_backport.FireflyBushBackport;
|
||||
import dev.micle.firefly_bush_backport.block.ModBlocks;
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.data.DataGenerator;
|
||||
import net.minecraft.resources.ResourceLocation;
|
||||
import net.minecraft.world.level.block.Block;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
import net.minecraftforge.client.model.generators.BlockStateProvider;
|
||||
import net.minecraftforge.common.data.ExistingFileHelper;
|
||||
import net.minecraftforge.registries.RegistryObject;
|
||||
import net.minecraftforge.fml.RegistryObject;
|
||||
|
||||
import java.util.Objects;
|
||||
|
||||
public class ModBlockStateProvider extends BlockStateProvider {
|
||||
public ModBlockStateProvider(DataGenerator generator, ExistingFileHelper existingFileHelper) {
|
||||
super(generator.getPackOutput(), FireflyBushBackport.MOD_ID, existingFileHelper);
|
||||
super(generator, FireflyBushBackport.MOD_ID, existingFileHelper);
|
||||
}
|
||||
|
||||
@Override
|
||||
@ -24,10 +24,9 @@ public class ModBlockStateProvider extends BlockStateProvider {
|
||||
private void crossEmissiveBlock(RegistryObject<Block> block) {
|
||||
String name = Objects.requireNonNull(block.getId()).getPath();
|
||||
simpleBlock(block.get(), models()
|
||||
.withExistingParent(name, ResourceLocation.fromNamespaceAndPath(FireflyBushBackport.MOD_ID, "block/cross_emissive"))
|
||||
.withExistingParent(name, new ResourceLocation(FireflyBushBackport.MOD_ID, "block/cross_emissive"))
|
||||
.texture("cross", "block/" + name)
|
||||
.texture("cross_emissive", "block/" + name + "_emissive")
|
||||
.renderType("cutout")
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
@ -2,21 +2,21 @@ package dev.micle.firefly_bush_backport.data.client;
|
||||
|
||||
import dev.micle.firefly_bush_backport.FireflyBushBackport;
|
||||
import dev.micle.firefly_bush_backport.block.ModBlocks;
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.data.DataGenerator;
|
||||
import net.minecraft.world.item.Items;
|
||||
import net.minecraft.world.level.block.Block;
|
||||
import net.minecraft.item.Items;
|
||||
import net.minecraftforge.client.model.generators.ItemModelBuilder;
|
||||
import net.minecraftforge.client.model.generators.ItemModelProvider;
|
||||
import net.minecraftforge.client.model.generators.ModelFile;
|
||||
import net.minecraftforge.common.data.ExistingFileHelper;
|
||||
import net.minecraftforge.fml.RegistryObject;
|
||||
import net.minecraftforge.registries.ForgeRegistries;
|
||||
import net.minecraftforge.registries.RegistryObject;
|
||||
|
||||
import java.util.Objects;
|
||||
|
||||
public class ModItemModelProvider extends ItemModelProvider {
|
||||
public ModItemModelProvider(DataGenerator generator, ExistingFileHelper existingFileHelper) {
|
||||
super(generator.getPackOutput(), FireflyBushBackport.MOD_ID, existingFileHelper);
|
||||
super(generator, FireflyBushBackport.MOD_ID, existingFileHelper);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@ -3,13 +3,13 @@ package dev.micle.firefly_bush_backport.data.client;
|
||||
import dev.micle.firefly_bush_backport.FireflyBushBackport;
|
||||
import dev.micle.firefly_bush_backport.sound.ModSounds;
|
||||
import net.minecraft.data.DataGenerator;
|
||||
import net.minecraft.resources.ResourceLocation;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
import net.minecraftforge.common.data.ExistingFileHelper;
|
||||
import net.minecraftforge.common.data.SoundDefinitionsProvider;
|
||||
|
||||
public class ModSoundDefinitionsProvider extends SoundDefinitionsProvider {
|
||||
public ModSoundDefinitionsProvider(DataGenerator generator, ExistingFileHelper existingFileHelper) {
|
||||
super(generator.getPackOutput(), FireflyBushBackport.MOD_ID, existingFileHelper);
|
||||
super(generator, FireflyBushBackport.MOD_ID, existingFileHelper);
|
||||
}
|
||||
|
||||
@Override
|
||||
@ -17,31 +17,31 @@ public class ModSoundDefinitionsProvider extends SoundDefinitionsProvider {
|
||||
add(ModSounds.FIREFLY_BUSH_IDLE, definition()
|
||||
.subtitle("sound." + FireflyBushBackport.MOD_ID + ".block.firefly_bush.idle")
|
||||
.with(
|
||||
sound(ResourceLocation.fromNamespaceAndPath(FireflyBushBackport.MOD_ID, "block/firefly_bush/firefly_bush1"))
|
||||
sound(new ResourceLocation(FireflyBushBackport.MOD_ID, "block/firefly_bush/firefly_bush1"))
|
||||
.volume(4),
|
||||
sound(ResourceLocation.fromNamespaceAndPath(FireflyBushBackport.MOD_ID, "block/firefly_bush/firefly_bush2"))
|
||||
sound(new ResourceLocation(FireflyBushBackport.MOD_ID, "block/firefly_bush/firefly_bush2"))
|
||||
.volume(4),
|
||||
sound(ResourceLocation.fromNamespaceAndPath(FireflyBushBackport.MOD_ID, "block/firefly_bush/firefly_bush3"))
|
||||
sound(new ResourceLocation(FireflyBushBackport.MOD_ID, "block/firefly_bush/firefly_bush3"))
|
||||
.volume(4),
|
||||
sound(ResourceLocation.fromNamespaceAndPath(FireflyBushBackport.MOD_ID, "block/firefly_bush/firefly_bush4"))
|
||||
sound(new ResourceLocation(FireflyBushBackport.MOD_ID, "block/firefly_bush/firefly_bush4"))
|
||||
.volume(4),
|
||||
sound(ResourceLocation.fromNamespaceAndPath(FireflyBushBackport.MOD_ID, "block/firefly_bush/firefly_bush5"))
|
||||
sound(new ResourceLocation(FireflyBushBackport.MOD_ID, "block/firefly_bush/firefly_bush5"))
|
||||
.volume(4),
|
||||
sound(ResourceLocation.fromNamespaceAndPath(FireflyBushBackport.MOD_ID, "block/firefly_bush/firefly_bush6"))
|
||||
sound(new ResourceLocation(FireflyBushBackport.MOD_ID, "block/firefly_bush/firefly_bush6"))
|
||||
.volume(4),
|
||||
sound(ResourceLocation.fromNamespaceAndPath(FireflyBushBackport.MOD_ID, "block/firefly_bush/firefly_bush7"))
|
||||
sound(new ResourceLocation(FireflyBushBackport.MOD_ID, "block/firefly_bush/firefly_bush7"))
|
||||
.volume(4)
|
||||
.weight(2),
|
||||
sound(ResourceLocation.fromNamespaceAndPath(FireflyBushBackport.MOD_ID, "block/firefly_bush/firefly_bush8"))
|
||||
sound(new ResourceLocation(FireflyBushBackport.MOD_ID, "block/firefly_bush/firefly_bush8"))
|
||||
.volume(4)
|
||||
.weight(2),
|
||||
sound(ResourceLocation.fromNamespaceAndPath(FireflyBushBackport.MOD_ID, "block/firefly_bush/firefly_bush9"))
|
||||
sound(new ResourceLocation(FireflyBushBackport.MOD_ID, "block/firefly_bush/firefly_bush9"))
|
||||
.volume(4)
|
||||
.weight(2),
|
||||
sound(ResourceLocation.fromNamespaceAndPath(FireflyBushBackport.MOD_ID, "block/firefly_bush/firefly_bush10"))
|
||||
sound(new ResourceLocation(FireflyBushBackport.MOD_ID, "block/firefly_bush/firefly_bush10"))
|
||||
.volume(4)
|
||||
.weight(2),
|
||||
sound(ResourceLocation.fromNamespaceAndPath(FireflyBushBackport.MOD_ID, "block/firefly_bush/firefly_bush11"))
|
||||
sound(new ResourceLocation(FireflyBushBackport.MOD_ID, "block/firefly_bush/firefly_bush11"))
|
||||
.volume(4)
|
||||
)
|
||||
);
|
||||
|
||||
@ -1,26 +1,23 @@
|
||||
package dev.micle.firefly_bush_backport.data.loot;
|
||||
|
||||
import dev.micle.firefly_bush_backport.FireflyBushBackport;
|
||||
import dev.micle.firefly_bush_backport.block.ModBlocks;
|
||||
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 net.minecraft.block.Block;
|
||||
import net.minecraft.data.loot.BlockLootTables;
|
||||
import net.minecraftforge.registries.ForgeRegistries;
|
||||
|
||||
import java.util.Set;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
public class ModBlockLootTableProvider extends BlockLootSubProvider {
|
||||
public ModBlockLootTableProvider() {
|
||||
super(Set.of(), FeatureFlags.REGISTRY.allFlags());
|
||||
public class ModBlockLootTableProvider extends BlockLootTables {
|
||||
@Override
|
||||
protected void addTables() {
|
||||
dropSelf(ModBlocks.FIREFLY_BUSH.get());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void generate() {
|
||||
this.dropSelf(ModBlocks.FIREFLY_BUSH.get());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected @NotNull Iterable<Block> getKnownBlocks() {
|
||||
return ModBlocks.BLOCKS.getEntries().stream().map(RegistryObject::get)::iterator;
|
||||
protected Iterable<Block> getKnownBlocks() {
|
||||
return ForgeRegistries.BLOCKS.getValues().stream()
|
||||
.filter(block -> FireflyBushBackport.MOD_ID.equals(block.getRegistryName().getNamespace()))
|
||||
.collect(Collectors.toSet());
|
||||
}
|
||||
}
|
||||
|
||||
@ -0,0 +1,38 @@
|
||||
package dev.micle.firefly_bush_backport.data.loot;
|
||||
|
||||
import com.google.common.collect.ImmutableList;
|
||||
import com.mojang.datafixers.util.Pair;
|
||||
import dev.micle.firefly_bush_backport.FireflyBushBackport;
|
||||
import net.minecraft.data.DataGenerator;
|
||||
import net.minecraft.data.LootTableProvider;
|
||||
import net.minecraft.loot.*;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.function.BiConsumer;
|
||||
import java.util.function.Consumer;
|
||||
import java.util.function.Supplier;
|
||||
|
||||
public class ModLootTableProvider extends LootTableProvider {
|
||||
public ModLootTableProvider(DataGenerator generator) {
|
||||
super(generator);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getName() {
|
||||
return new ResourceLocation(FireflyBushBackport.MOD_ID, "loot_tables").toString();
|
||||
}
|
||||
|
||||
@Override
|
||||
protected List<Pair<Supplier<Consumer<BiConsumer<ResourceLocation, LootTable.Builder>>>, LootParameterSet>> getTables() {
|
||||
return ImmutableList.of(
|
||||
Pair.of(ModBlockLootTableProvider::new, LootParameterSets.BLOCK)
|
||||
);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void validate(Map<ResourceLocation, LootTable> map, ValidationTracker validationTracker) {
|
||||
map.forEach((id, table) -> LootTableManager.validate(validationTracker, id, table));
|
||||
}
|
||||
}
|
||||
@ -23,13 +23,14 @@ import net.minecraftforge.eventbus.api.IEventBus;
|
||||
import net.minecraftforge.fml.event.lifecycle.*;
|
||||
import net.minecraftforge.fml.event.server.FMLServerStartedEvent;
|
||||
import net.minecraftforge.fml.event.server.FMLServerStoppingEvent;
|
||||
import net.minecraftforge.fml.javafmlmod.FMLJavaModLoadingContext;
|
||||
|
||||
public class Proxy implements IProxy {
|
||||
private static MinecraftServer server = null;
|
||||
|
||||
// Common setup
|
||||
public Proxy() {
|
||||
IEventBus modEventBus = FireflyBushBackport.getFMLJavaModLoadingContext().getModEventBus();
|
||||
IEventBus modEventBus = FMLJavaModLoadingContext.get().getModEventBus();
|
||||
|
||||
Config.register();
|
||||
ModBlocks.register(modEventBus);
|
||||
@ -88,7 +89,7 @@ public class Proxy implements IProxy {
|
||||
// Client setup
|
||||
public static class Client extends Proxy {
|
||||
public Client() {
|
||||
IEventBus modEventBus = FireflyBushBackport.getFMLJavaModLoadingContext().getModEventBus();
|
||||
IEventBus modEventBus = FMLJavaModLoadingContext.get().getModEventBus();
|
||||
|
||||
// Register mod event bus listeners
|
||||
modEventBus.addListener(Client::setup);
|
||||
@ -121,7 +122,7 @@ public class Proxy implements IProxy {
|
||||
public static class Server extends Proxy {
|
||||
public Server() {
|
||||
// Register mod event bus listeners
|
||||
IEventBus modEventBus = FireflyBushBackport.getFMLJavaModLoadingContext().getModEventBus();
|
||||
IEventBus modEventBus = FMLJavaModLoadingContext.get().getModEventBus();
|
||||
modEventBus.addListener(Server::setup);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user