From 573243da5d2ae8b80ed0ebe94ddc0a4a5127fa9e Mon Sep 17 00:00:00 2001 From: Micle Date: Fri, 6 Jun 2025 00:24:29 +0100 Subject: [PATCH] Registering firefly particle. --- .../particle/ModParticles.java | 5 +++++ .../micle/firefly_bush_backport/proxy/Proxy.java | 13 +++++++++++-- 2 files changed, 16 insertions(+), 2 deletions(-) diff --git a/src/main/java/dev/micle/firefly_bush_backport/particle/ModParticles.java b/src/main/java/dev/micle/firefly_bush_backport/particle/ModParticles.java index 82e7389..31a6a77 100644 --- a/src/main/java/dev/micle/firefly_bush_backport/particle/ModParticles.java +++ b/src/main/java/dev/micle/firefly_bush_backport/particle/ModParticles.java @@ -2,13 +2,18 @@ package dev.micle.firefly_bush_backport.particle; import dev.micle.firefly_bush_backport.FireflyBushBackport; import net.minecraft.core.particles.ParticleType; +import net.minecraft.core.particles.SimpleParticleType; import net.minecraftforge.eventbus.api.IEventBus; import net.minecraftforge.registries.DeferredRegister; import net.minecraftforge.registries.ForgeRegistries; +import net.minecraftforge.registries.RegistryObject; public class ModParticles { public static final DeferredRegister> PARTICLE_TYPES = DeferredRegister.create(ForgeRegistries.PARTICLE_TYPES, FireflyBushBackport.MOD_ID); + public static final RegistryObject> FIREFLY = PARTICLE_TYPES.register("firefly", + () -> new SimpleParticleType(false)); + public static void register(IEventBus modEventBus) { PARTICLE_TYPES.register(modEventBus); } diff --git a/src/main/java/dev/micle/firefly_bush_backport/proxy/Proxy.java b/src/main/java/dev/micle/firefly_bush_backport/proxy/Proxy.java index 28f23ed..720929d 100644 --- a/src/main/java/dev/micle/firefly_bush_backport/proxy/Proxy.java +++ b/src/main/java/dev/micle/firefly_bush_backport/proxy/Proxy.java @@ -5,6 +5,7 @@ import dev.micle.firefly_bush_backport.block.ModBlocks; import dev.micle.firefly_bush_backport.config.Config; import dev.micle.firefly_bush_backport.creative_mode_tab.ModCreativeModeTabs; import dev.micle.firefly_bush_backport.item.ModItems; +import dev.micle.firefly_bush_backport.particle.FireflyParticle; import dev.micle.firefly_bush_backport.particle.ModParticles; import dev.micle.firefly_bush_backport.sound.ModSounds; import net.minecraft.client.Minecraft; @@ -13,6 +14,7 @@ import net.minecraft.world.entity.player.Player; import net.minecraft.world.level.Level; import net.minecraftforge.api.distmarker.Dist; import net.minecraftforge.api.distmarker.OnlyIn; +import net.minecraftforge.client.event.RegisterParticleProvidersEvent; import net.minecraftforge.common.MinecraftForge; import net.minecraftforge.event.AddReloadListenerEvent; import net.minecraftforge.event.server.ServerStartedEvent; @@ -32,7 +34,6 @@ public class Proxy implements IProxy { ModItems.register(modEventBus); ModCreativeModeTabs.register(modEventBus); ModSounds.register(modEventBus); - ModParticles.register(modEventBus); // Register mod event bus listeners modEventBus.addListener(Proxy::setup); @@ -79,16 +80,24 @@ public class Proxy implements IProxy { // Client setup public static class Client extends Proxy { public Client() { - // Register mod event bus listeners IEventBus modEventBus = FireflyBushBackport.getFMLJavaModLoadingContext().getModEventBus(); + + ModParticles.register(modEventBus); + + // Register mod event bus listeners modEventBus.addListener(Client::setup); modEventBus.addListener(Client::postSetup); + modEventBus.addListener(Client::registerParticleFactories); } private static void setup(FMLClientSetupEvent event) {} private static void postSetup(FMLLoadCompleteEvent event) {} + private static void registerParticleFactories(RegisterParticleProvidersEvent event) { + event.registerSpriteSet(ModParticles.FIREFLY.get(), FireflyParticle.FireflyProvider::new); + } + @Override @OnlyIn(Dist.CLIENT) public Player getClientPlayer() {