2023-11-25 21:38:04 +02:00
|
|
|
package com.hypherionmc.craterlib;
|
|
|
|
|
|
|
|
import com.hypherionmc.craterlib.api.event.client.LateInitEvent;
|
|
|
|
import com.hypherionmc.craterlib.common.NeoForgeServerEvents;
|
|
|
|
import com.hypherionmc.craterlib.core.event.CraterEventBus;
|
2024-01-02 15:16:13 +02:00
|
|
|
import com.hypherionmc.craterlib.core.networking.CraterPacketNetwork;
|
|
|
|
import com.hypherionmc.craterlib.core.networking.PacketRegistry;
|
|
|
|
import com.hypherionmc.craterlib.core.networking.data.PacketSide;
|
|
|
|
import com.hypherionmc.craterlib.network.CraterNeoForgeNetworkHandler;
|
2023-11-25 21:38:04 +02:00
|
|
|
import net.minecraft.client.Minecraft;
|
|
|
|
import net.neoforged.bus.api.IEventBus;
|
|
|
|
import net.neoforged.fml.common.Mod;
|
|
|
|
import net.neoforged.fml.event.lifecycle.FMLCommonSetupEvent;
|
|
|
|
import net.neoforged.fml.javafmlmod.FMLJavaModLoadingContext;
|
|
|
|
import net.neoforged.fml.loading.FMLEnvironment;
|
2024-01-02 15:16:13 +02:00
|
|
|
import net.neoforged.fml.loading.FMLLoader;
|
2023-11-25 21:38:04 +02:00
|
|
|
import net.neoforged.neoforge.common.NeoForge;
|
|
|
|
|
|
|
|
@Mod(CraterConstants.MOD_ID)
|
|
|
|
public class CraterLib {
|
|
|
|
|
2024-01-02 15:16:13 +02:00
|
|
|
private final PacketRegistry handler;
|
|
|
|
|
2023-11-25 21:38:04 +02:00
|
|
|
public CraterLib(IEventBus eventBus) {
|
|
|
|
NeoForge.EVENT_BUS.register(new NeoForgeServerEvents());
|
|
|
|
FMLJavaModLoadingContext.get().getModEventBus().addListener(this::commonSetup);
|
2024-01-02 15:16:13 +02:00
|
|
|
handler = new CraterNeoForgeNetworkHandler(FMLLoader.getDist().isClient() ? PacketSide.CLIENT : PacketSide.SERVER);
|
2023-11-25 21:38:04 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
public void commonSetup(FMLCommonSetupEvent evt) {
|
2024-01-02 15:16:13 +02:00
|
|
|
new CraterPacketNetwork(handler);
|
2023-11-25 21:38:04 +02:00
|
|
|
if (FMLEnvironment.dist.isClient()) {
|
|
|
|
LateInitEvent event = new LateInitEvent(Minecraft.getInstance(), Minecraft.getInstance().options);
|
|
|
|
CraterEventBus.INSTANCE.postEvent(event);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|