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