48 lines
1.9 KiB
Java
48 lines
1.9 KiB
Java
/*
|
|
* Copyright (c) 2017 univento.eu - All rights reserved
|
|
* You are not allowed to use, distribute or modify this code
|
|
*/
|
|
|
|
package eu.univento.core.antihack;
|
|
|
|
import eu.univento.commons.player.warn.WarnReason;
|
|
import eu.univento.core.Core;
|
|
import eu.univento.core.antihack.modules.*;
|
|
import eu.univento.core.api.player.CustomPlayer;
|
|
import org.bukkit.Bukkit;
|
|
import org.bukkit.event.Listener;
|
|
import org.bukkit.plugin.PluginManager;
|
|
|
|
import java.util.Map;
|
|
|
|
public class AntiHack implements Listener{
|
|
|
|
|
|
//TODO: add nofication system
|
|
public void registerListeners() {
|
|
PluginManager pm = Bukkit.getPluginManager();
|
|
pm.registerEvents(this, Core.getInstance());
|
|
pm.registerEvents(new Movement(), Core.getInstance());
|
|
pm.registerEvents(new AutoClicker(), Core.getInstance());
|
|
pm.registerEvents(new Criticals(), Core.getInstance());
|
|
pm.registerEvents(new Reach(), Core.getInstance());
|
|
pm.registerEvents(new Regen(), Core.getInstance());
|
|
pm.registerEvents(new AutoRespawn(), Core.getInstance());
|
|
pm.registerEvents(new FastPlace(), Core.getInstance());
|
|
pm.registerEvents(new AutoSoup(), Core.getInstance());
|
|
pm.registerEvents(new Nuker(), Core.getInstance());
|
|
pm.registerEvents(new SelfHit(), Core.getInstance());
|
|
pm.registerEvents(new BowAimbot(), Core.getInstance());
|
|
pm.registerEvents(new Packets(), Core.getInstance());
|
|
|
|
Bukkit.getScheduler().scheduleSyncRepeatingTask(Core.getInstance(), () -> {
|
|
for(Map.Entry<CustomPlayer, Integer> entry : AutoClicker.clicks.entrySet()) {
|
|
if(entry.getValue() > 25) {
|
|
//TODO: change to real warn reason
|
|
entry.getKey().warn(WarnReason.SPAM, null, "https://players.univento.eu/" + entry.getKey().getUniqueId().toString() + "/hacks");
|
|
}
|
|
AutoClicker.clicks.remove(entry.getKey());
|
|
}
|
|
}, 20L, 20L);
|
|
}
|
|
} |