mirror of https://github.com/plexusorg/Plex.git
44 lines
1.5 KiB
Java
44 lines
1.5 KiB
Java
package dev.plex.listener.impl;
|
|
|
|
import dev.plex.listener.PlexListener;
|
|
import dev.plex.services.impl.TimingService;
|
|
import net.kyori.adventure.text.Component;
|
|
import org.bukkit.event.EventHandler;
|
|
import org.bukkit.event.EventPriority;
|
|
import org.bukkit.event.block.BlockBreakEvent;
|
|
import org.bukkit.event.block.BlockPlaceEvent;
|
|
|
|
import java.util.UUID;
|
|
|
|
public class AntiNukerListener extends PlexListener
|
|
{
|
|
@EventHandler(priority = EventPriority.HIGH)
|
|
public void onBlockPlace(BlockPlaceEvent event)
|
|
{
|
|
TimingService.nukerCooldown.merge(event.getPlayer().getUniqueId(), 1L, Long::sum);
|
|
if (getCount(event.getPlayer().getUniqueId()) > 200L)
|
|
{
|
|
TimingService.strikes.merge(event.getPlayer().getUniqueId(), 1L, Long::sum);
|
|
event.getPlayer().kick(Component.text("Please turn off your nuker!"));
|
|
event.setCancelled(true);
|
|
}
|
|
}
|
|
|
|
@EventHandler(priority = EventPriority.HIGH)
|
|
public void onBlockBreak(BlockBreakEvent event)
|
|
{
|
|
TimingService.nukerCooldown.merge(event.getPlayer().getUniqueId(), 1L, Long::sum);
|
|
if (getCount(event.getPlayer().getUniqueId()) > 200L)
|
|
{
|
|
TimingService.strikes.merge(event.getPlayer().getUniqueId(), 1L, Long::sum);
|
|
event.getPlayer().kick(Component.text("Please turn off your nuker!"));
|
|
event.setCancelled(true);
|
|
}
|
|
}
|
|
|
|
public long getCount(UUID uuid)
|
|
{
|
|
return TimingService.nukerCooldown.getOrDefault(uuid, 1L);
|
|
}
|
|
}
|