Added player state field with getter and setter to the Client Proxy. Registering events.

This commit is contained in:
2022-05-22 03:13:38 +01:00
parent 0472b8ecc5
commit e88bdabd06

View File

@ -1,6 +1,8 @@
package dev.micle.loginprotection.proxy;
import dev.micle.loginprotection.data.ProtectedPlayer;
import dev.micle.loginprotection.data.ProtectedPlayerManager;
import dev.micle.loginprotection.events.*;
import dev.micle.loginprotection.network.NetworkManager;
import dev.micle.loginprotection.setup.Config;
import net.minecraft.client.Minecraft;
@ -37,6 +39,12 @@ public class Proxy implements IProxy {
MinecraftForge.EVENT_BUS.addListener(Proxy::onAddReloadListeners);
MinecraftForge.EVENT_BUS.addListener(Proxy::serverStarted);
MinecraftForge.EVENT_BUS.addListener(Proxy::serverStopping);
// Register event handlers
MinecraftForge.EVENT_BUS.register(new OnLivingSetAttackTargetEventHandler());
MinecraftForge.EVENT_BUS.register(new OnPlayerDamageEventHandler());
MinecraftForge.EVENT_BUS.register(new OnPlayerJoinEventHandler());
MinecraftForge.EVENT_BUS.register(new OnPlayerLeaveEventHandler());
}
private static void setup(FMLCommonSetupEvent event) {}
@ -73,17 +81,30 @@ public class Proxy implements IProxy {
// Client setup
public static class Client extends Proxy {
private static ProtectedPlayer.State playerState;
public Client() {
// Register mod event bus listeners
IEventBus modEventBus = FMLJavaModLoadingContext.get().getModEventBus();
modEventBus.addListener(Client::setup);
modEventBus.addListener(Client::postSetup);
// Register event handlers
MinecraftForge.EVENT_BUS.register(new OnClientInputEventHandler());
}
private static void setup(FMLClientSetupEvent event) {}
private static void postSetup(FMLLoadCompleteEvent event) {}
public static ProtectedPlayer.State getPlayerState() {
return playerState;
}
public static void setPlayerState(ProtectedPlayer.State newPlayerState) {
playerState = newPlayerState;
}
@Override
@OnlyIn(Dist.CLIENT)
public Player getClientPlayer() {
@ -91,7 +112,7 @@ public class Proxy implements IProxy {
}
@Override
@OnlyIn(Dist.DEDICATED_SERVER)
@OnlyIn(Dist.CLIENT)
public Level getClientWorld() {
return Minecraft.getInstance().level;
}