Removed OnPlayerTickEventHandler and added client-sided last input tick field with getter and setter to proxy.
This commit is contained in:
@ -1,21 +0,0 @@
|
||||
package dev.micle.loginprotection.events;
|
||||
|
||||
import dev.micle.loginprotection.data.ProtectedPlayer;
|
||||
import dev.micle.loginprotection.data.ProtectedPlayerManager;
|
||||
import dev.micle.loginprotection.setup.Config;
|
||||
import net.minecraftforge.event.TickEvent;
|
||||
import net.minecraftforge.eventbus.api.SubscribeEvent;
|
||||
|
||||
public class OnPlayerTickEventHandler {
|
||||
@SubscribeEvent
|
||||
public void onPlayerTickEvent(TickEvent.PlayerTickEvent event) {
|
||||
ProtectedPlayer protectedPlayer = ProtectedPlayerManager.getPlayer(event.player.getUUID());
|
||||
if (protectedPlayer == null) {
|
||||
return;
|
||||
}
|
||||
if (protectedPlayer.getState().equals(ProtectedPlayer.State.ACTIVE) && Config.Server.AFK_PROTECTION_ENABLED.get() &&
|
||||
event.player.tickCount - protectedPlayer.getLastInputTick() >= Config.Server.AFK_TIME_THRESHOLD.get() * 20) {
|
||||
ProtectedPlayerManager.updateState(protectedPlayer.getPlayerUUID());
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -45,7 +45,6 @@ public class Proxy implements IProxy {
|
||||
MinecraftForge.EVENT_BUS.register(new OnPlayerDamageEventHandler());
|
||||
MinecraftForge.EVENT_BUS.register(new OnPlayerJoinEventHandler());
|
||||
MinecraftForge.EVENT_BUS.register(new OnPlayerLeaveEventHandler());
|
||||
MinecraftForge.EVENT_BUS.register(new OnPlayerTickEventHandler());
|
||||
}
|
||||
|
||||
private static void setup(FMLCommonSetupEvent event) {}
|
||||
@ -83,6 +82,7 @@ public class Proxy implements IProxy {
|
||||
// Client setup
|
||||
public static class Client extends Proxy {
|
||||
private static ProtectedPlayer.State playerState;
|
||||
private static int lastInputTick;
|
||||
|
||||
public Client() {
|
||||
// Register mod event bus listeners
|
||||
@ -106,6 +106,14 @@ public class Proxy implements IProxy {
|
||||
playerState = newPlayerState;
|
||||
}
|
||||
|
||||
public static int getLastInputTick() {
|
||||
return lastInputTick;
|
||||
}
|
||||
|
||||
public static void setLastInputTick(int newLastInputTick) {
|
||||
lastInputTick = newLastInputTick;
|
||||
}
|
||||
|
||||
@Override
|
||||
@OnlyIn(Dist.CLIENT)
|
||||
public Player getClientPlayer() {
|
||||
|
||||
Reference in New Issue
Block a user