Updated to use new ProtectedPlayerManager and new config options.

This commit is contained in:
2022-05-22 03:18:34 +01:00
parent 084d2caa25
commit 1976e54424
4 changed files with 25 additions and 23 deletions

View File

@ -1,6 +1,7 @@
package dev.micle.loginprotection.events;
import dev.micle.loginprotection.LoginProtection;
import dev.micle.loginprotection.data.ProtectedPlayer;
import dev.micle.loginprotection.data.ProtectedPlayerManager;
import net.minecraft.world.entity.player.Player;
import net.minecraftforge.event.entity.living.LivingDamageEvent;
import net.minecraftforge.eventbus.api.SubscribeEvent;
@ -8,11 +9,12 @@ import net.minecraftforge.eventbus.api.SubscribeEvent;
public class OnPlayerDamageEventHandler {
@SubscribeEvent
public void LivingDamageEvent(LivingDamageEvent event) {
if (!(event.getEntity() instanceof Player)) { return; }
Player player = (Player) event.getEntity();
if (LoginProtection.protected_players.getPlayer(player.getUUID()) != null) {
event.setCanceled(true);
if (!(event.getEntity() instanceof Player player)) { return; }
ProtectedPlayer protectedPlayer = ProtectedPlayerManager.getPlayer(player.getUUID());
if (protectedPlayer == null || protectedPlayer.getState().equals(ProtectedPlayer.State.JOINING) ||
protectedPlayer.getState().equals(ProtectedPlayer.State.AFK) || protectedPlayer.getGracePeriodTimeRemaining() == 0) {
return;
}
event.setCanceled(true);
}
}