From 0a91aa1c48d719e01d327ceec493d96927642bf3 Mon Sep 17 00:00:00 2001 From: asofold Date: Tue, 17 Jul 2012 23:20:21 +0200 Subject: [PATCH] Raw: add Citizens hook --- CompatNoCheatPlus/cncp_lists.txt | 8 +++++ .../bukkit/cncp/CompatNoCheatPlus.java | 4 +++ .../cncp/hooks/citizens/HookCitizens.java | 32 +++++++++++++++++++ 3 files changed, 44 insertions(+) create mode 100644 CompatNoCheatPlus/src/me/asofold/bukkit/cncp/hooks/citizens/HookCitizens.java diff --git a/CompatNoCheatPlus/cncp_lists.txt b/CompatNoCheatPlus/cncp_lists.txt index 1409b9a..30a50cd 100644 --- a/CompatNoCheatPlus/cncp_lists.txt +++ b/CompatNoCheatPlus/cncp_lists.txt @@ -18,8 +18,16 @@ STACK ? another sequence number (for standard events) +*** 0.2.0 + +!(check) NCP: cancellation of events: do actions have to be reset too ? + VERSION HISTORY --------------------------- + +(0.2.0) +- (add) Simple Citizens hook. + (0.1.0) - (add) List to enable plugins: plugins.ensure-enable [Forces their events to be processed before NoCheatPlus gets them!] - (bugfix) Remove import of mcMMO-hook (use direct package reference instead). diff --git a/CompatNoCheatPlus/src/me/asofold/bukkit/cncp/CompatNoCheatPlus.java b/CompatNoCheatPlus/src/me/asofold/bukkit/cncp/CompatNoCheatPlus.java index a5d5bf1..86a813d 100644 --- a/CompatNoCheatPlus/src/me/asofold/bukkit/cncp/CompatNoCheatPlus.java +++ b/CompatNoCheatPlus/src/me/asofold/bukkit/cncp/CompatNoCheatPlus.java @@ -148,6 +148,10 @@ public class CompatNoCheatPlus extends JavaPlugin implements Listener { addHook(new me.asofold.bukkit.cncp.hooks.mcmmo.HookmcMMO()); } catch (Throwable t){} + try{ + addHook(new me.asofold.bukkit.cncp.hooks.citizens.HookCitizens()); + } + catch (Throwable t){} } @Override diff --git a/CompatNoCheatPlus/src/me/asofold/bukkit/cncp/hooks/citizens/HookCitizens.java b/CompatNoCheatPlus/src/me/asofold/bukkit/cncp/hooks/citizens/HookCitizens.java new file mode 100644 index 0000000..4552561 --- /dev/null +++ b/CompatNoCheatPlus/src/me/asofold/bukkit/cncp/hooks/citizens/HookCitizens.java @@ -0,0 +1,32 @@ +package me.asofold.bukkit.cncp.hooks.citizens; + +import me.asofold.bukkit.cncp.hooks.AbstractHook; +import net.citizensnpcs.resources.npclib.PathNPC; + +import org.bukkit.craftbukkit.entity.CraftPlayer; +import org.bukkit.entity.Player; + +import fr.neatmonster.nocheatplus.checks.CheckEvent; + +public final class HookCitizens extends AbstractHook { + + @Override + public String getHookName() { + return "Citizens(default)"; + } + + @Override + public String getHookVersion() { + return "0.0"; + } + + @Override + public final void processEvent(final String group, final String check, final CheckEvent event) { + final Player player = event.getPlayer().getBukkitPlayer(); + if (player instanceof CraftPlayer){ + final CraftPlayer cp = (CraftPlayer) player; + if (cp.getHandle() instanceof PathNPC) event.setCancelled(true); + } + } + +}