Files
CraterLib/Fabric/src/main/java/com/hypherionmc/craterlib/CraterLibInitializer.java

41 lines
2.1 KiB
Java
Raw Normal View History

package com.hypherionmc.craterlib;
2022-05-12 00:20:18 +02:00
import com.hypherionmc.craterlib.api.events.server.CraterRegisterCommandEvent;
import com.hypherionmc.craterlib.api.events.server.CraterServerLifecycleEvent;
2023-06-02 23:59:14 +02:00
import com.hypherionmc.craterlib.common.FabricCommonPlatform;
import com.hypherionmc.craterlib.compat.Vanish;
2023-06-08 22:58:02 +02:00
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.data.PacketSide;
import com.hypherionmc.craterlib.core.platform.ModloaderEnvironment;
2024-01-02 15:16:13 +02:00
import com.hypherionmc.craterlib.network.CraterFabricNetworkHandler;
import com.hypherionmc.craterlib.nojang.server.BridgedMinecraftServer;
2022-05-12 00:20:18 +02:00
import net.fabricmc.api.ModInitializer;
2023-06-08 22:58:02 +02:00
import net.fabricmc.fabric.api.command.v2.CommandRegistrationCallback;
2022-09-24 21:21:01 +02:00
import net.fabricmc.fabric.api.event.lifecycle.v1.ServerLifecycleEvents;
2022-05-12 00:20:18 +02:00
public class CraterLibInitializer implements ModInitializer {
2022-05-12 00:20:18 +02:00
@Override
public void onInitialize() {
2024-01-02 15:16:13 +02:00
new CraterPacketNetwork(new CraterFabricNetworkHandler(PacketSide.SERVER));
CommandRegistrationCallback.EVENT.register((dispatcher, registryAccess, environment) -> {
CraterEventBus.INSTANCE.postEvent(new CraterRegisterCommandEvent(dispatcher));
});
2023-06-08 22:58:02 +02:00
ServerLifecycleEvents.SERVER_STARTING.register(server -> {
FabricCommonPlatform.server = server;
CraterEventBus.INSTANCE.postEvent(new CraterServerLifecycleEvent.Starting(BridgedMinecraftServer.of(server)));
2023-06-08 22:58:02 +02:00
});
ServerLifecycleEvents.SERVER_STARTED.register(li -> CraterEventBus.INSTANCE.postEvent(new CraterServerLifecycleEvent.Started(BridgedMinecraftServer.of(li))));
ServerLifecycleEvents.SERVER_STOPPING.register(server -> CraterEventBus.INSTANCE.postEvent(new CraterServerLifecycleEvent.Stopping(BridgedMinecraftServer.of(server))));
ServerLifecycleEvents.SERVER_STOPPED.register(server -> CraterEventBus.INSTANCE.postEvent(new CraterServerLifecycleEvent.Stopped(BridgedMinecraftServer.of(server))));
if (ModloaderEnvironment.INSTANCE.isModLoaded("melius-vanish")) {
Vanish.register();
}
2022-05-12 00:20:18 +02:00
}
2022-05-12 00:18:53 +02:00
}