summaryrefslogtreecommitdiffstats
path: root/EssentialsProtect/src/net/ess3/protect/EssentialsProtectEntityListener.java
diff options
context:
space:
mode:
authorementalo <ementalodev@gmx.co.uk>2012-10-13 19:40:55 +0100
committerementalo <ementalodev@gmx.co.uk>2012-10-13 19:40:55 +0100
commiteca8b54ef595e543c5ba9a94cc1b62e0c62a64d4 (patch)
tree73d7dbe23331b56179541efe1a0390c377634fc1 /EssentialsProtect/src/net/ess3/protect/EssentialsProtectEntityListener.java
parent590430fcec682b190d6ab1f697cbf10c42623fbc (diff)
downloadEssentials-eca8b54ef595e543c5ba9a94cc1b62e0c62a64d4.tar
Essentials-eca8b54ef595e543c5ba9a94cc1b62e0c62a64d4.tar.gz
Essentials-eca8b54ef595e543c5ba9a94cc1b62e0c62a64d4.tar.lz
Essentials-eca8b54ef595e543c5ba9a94cc1b62e0c62a64d4.tar.xz
Essentials-eca8b54ef595e543c5ba9a94cc1b62e0c62a64d4.zip
entity target bypass protect permission split out to essentials.protect.entity.bypass.entityname for per entity settings
Diffstat (limited to 'EssentialsProtect/src/net/ess3/protect/EssentialsProtectEntityListener.java')
-rw-r--r--EssentialsProtect/src/net/ess3/protect/EssentialsProtectEntityListener.java11
1 files changed, 9 insertions, 2 deletions
diff --git a/EssentialsProtect/src/net/ess3/protect/EssentialsProtectEntityListener.java b/EssentialsProtect/src/net/ess3/protect/EssentialsProtectEntityListener.java
index 5bde19973..7b3b8dc9d 100644
--- a/EssentialsProtect/src/net/ess3/protect/EssentialsProtectEntityListener.java
+++ b/EssentialsProtect/src/net/ess3/protect/EssentialsProtectEntityListener.java
@@ -190,7 +190,13 @@ public class EssentialsProtectEntityListener implements Listener
@EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true)
public void onEntityTarget(final EntityTargetEvent event)
{
- if (event.getTarget().getType() == EntityType.PLAYER)
+ final Entity entity = event.getTarget();
+ if(entity == null)
+ {
+ return;
+ }
+
+ if (entity.getType() == EntityType.PLAYER)
{
final Player user = (Player)event.getTarget();
if ((event.getReason() == TargetReason.CLOSEST_PLAYER
@@ -199,7 +205,8 @@ public class EssentialsProtectEntityListener implements Listener
|| event.getReason() == TargetReason.RANDOM_TARGET
|| event.getReason() == TargetReason.TARGET_ATTACKED_OWNER
|| event.getReason() == TargetReason.OWNER_ATTACKED_TARGET)
- && Permissions.ENTITYTARGET.isAuthorized(user))
+ && !prot.getSettings().getData().getPrevent().isEntitytarget()
+ && !Permissions.ENTITY_TARGET_BYPASS.isAuthorized(user, event.getEntity().getType().getName().toLowerCase()))
{
event.setCancelled(true);
}