diff --git a/src/main/java/dev/micle/totemofreviving/TotemOfReviving.java b/src/main/java/dev/micle/totemofreviving/TotemOfReviving.java index 5852867..9fd34f2 100644 --- a/src/main/java/dev/micle/totemofreviving/TotemOfReviving.java +++ b/src/main/java/dev/micle/totemofreviving/TotemOfReviving.java @@ -3,10 +3,11 @@ package dev.micle.totemofreviving; import dev.micle.totemofreviving.proxy.IProxy; import dev.micle.totemofreviving.proxy.Proxy; import net.minecraft.resources.ResourceLocation; -import net.minecraftforge.fml.DistExecutor; -import net.minecraftforge.fml.ModContainer; -import net.minecraftforge.fml.ModList; -import net.minecraftforge.fml.common.Mod; +import net.neoforged.api.distmarker.Dist; +import net.neoforged.bus.api.IEventBus; +import net.neoforged.fml.ModContainer; +import net.neoforged.fml.common.Mod; +import net.neoforged.fml.loading.FMLEnvironment; import java.util.Optional; @@ -16,11 +17,10 @@ public final class TotemOfReviving { private static IProxy proxy; - public TotemOfReviving() { - proxy = DistExecutor.safeRunForDist( - () -> Proxy.Client::new, - () -> Proxy.Server::new - ); + public TotemOfReviving(IEventBus modEventBus) { + proxy = FMLEnvironment.dist == Dist.CLIENT + ? new Proxy.Client(modEventBus) + : new Proxy.Server(modEventBus); } public static ResourceLocation createResourceLocation(String name) { diff --git a/src/main/java/dev/micle/totemofreviving/proxy/IProxy.java b/src/main/java/dev/micle/totemofreviving/proxy/IProxy.java index 4f9e335..98c834a 100644 --- a/src/main/java/dev/micle/totemofreviving/proxy/IProxy.java +++ b/src/main/java/dev/micle/totemofreviving/proxy/IProxy.java @@ -4,8 +4,15 @@ import net.minecraft.server.MinecraftServer; import net.minecraft.world.entity.player.Player; import net.minecraft.world.level.Level; +import javax.annotation.Nullable; + public interface IProxy { + @Nullable MinecraftServer getServer(); + + @Nullable Player getClientPlayer(); - Level getClientWorld(); + + @Nullable + Level getClientLevel(); } diff --git a/src/main/java/dev/micle/totemofreviving/proxy/Proxy.java b/src/main/java/dev/micle/totemofreviving/proxy/Proxy.java index 0c29e72..939677d 100644 --- a/src/main/java/dev/micle/totemofreviving/proxy/Proxy.java +++ b/src/main/java/dev/micle/totemofreviving/proxy/Proxy.java @@ -7,37 +7,35 @@ import net.minecraft.client.Minecraft; import net.minecraft.server.MinecraftServer; 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.common.MinecraftForge; -import net.minecraftforge.event.AddReloadListenerEvent; -import net.minecraftforge.event.server.ServerStartedEvent; -import net.minecraftforge.event.server.ServerStoppingEvent; -import net.minecraftforge.eventbus.api.IEventBus; -import net.minecraftforge.fml.event.lifecycle.*; -import net.minecraftforge.fml.javafmlmod.FMLJavaModLoadingContext; +import net.neoforged.api.distmarker.Dist; +import net.neoforged.api.distmarker.OnlyIn; +import net.neoforged.bus.api.IEventBus; +import net.neoforged.fml.event.lifecycle.*; +import net.neoforged.neoforge.common.NeoForge; +import net.neoforged.neoforge.event.AddReloadListenerEvent; +import net.neoforged.neoforge.event.server.ServerStartedEvent; +import net.neoforged.neoforge.event.server.ServerStoppingEvent; public class Proxy implements IProxy { // Initialize variables private static MinecraftServer server = null; // Common setup - public Proxy() { + public Proxy(IEventBus modEventBus) { // Initialize setup Registration.register(); Config.init(); NetworkManager.init(); // Register mod event bus listeners - IEventBus modEventBus = FMLJavaModLoadingContext.get().getModEventBus(); modEventBus.addListener(Proxy::setup); modEventBus.addListener(Proxy::imcEnqueue); modEventBus.addListener(Proxy::imcProcess); // Register event bus listeners - MinecraftForge.EVENT_BUS.addListener(Proxy::onAddReloadListeners); - MinecraftForge.EVENT_BUS.addListener(Proxy::serverStarted); - MinecraftForge.EVENT_BUS.addListener(Proxy::serverStopping); + NeoForge.EVENT_BUS.addListener(Proxy::onAddReloadListeners); + NeoForge.EVENT_BUS.addListener(Proxy::serverStarted); + NeoForge.EVENT_BUS.addListener(Proxy::serverStopping); } private static void setup(FMLCommonSetupEvent event) {} @@ -67,15 +65,15 @@ public class Proxy implements IProxy { } @Override - public Level getClientWorld() { + public Level getClientLevel() { return null; } // Client setup public static class Client extends Proxy { - public Client() { - // Register mod event bus listeners - IEventBus modEventBus = FMLJavaModLoadingContext.get().getModEventBus(); + public Client(IEventBus modEventBus) { + super(modEventBus); + // Register mod event bus listeners modEventBus.addListener(Client::setup); modEventBus.addListener(Client::postSetup); } @@ -92,16 +90,16 @@ public class Proxy implements IProxy { @Override @OnlyIn(Dist.CLIENT) - public Level getClientWorld() { + public Level getClientLevel() { return Minecraft.getInstance().level; } } // Server setup public static class Server extends Proxy { - public Server() { - // Register mod event bus listeners - IEventBus modEventBus = FMLJavaModLoadingContext.get().getModEventBus(); + public Server(IEventBus modEventBus) { + super(modEventBus); + // Register mod event bus listeners modEventBus.addListener(Server::setup); }