diff options
Diffstat (limited to 'EssentialsProtect/src/net/ess3/protect/EssentialsProtectEntityListener.java')
-rw-r--r-- | EssentialsProtect/src/net/ess3/protect/EssentialsProtectEntityListener.java | 114 |
1 files changed, 38 insertions, 76 deletions
diff --git a/EssentialsProtect/src/net/ess3/protect/EssentialsProtectEntityListener.java b/EssentialsProtect/src/net/ess3/protect/EssentialsProtectEntityListener.java index 2c9a5cdde..0e1b75a7e 100644 --- a/EssentialsProtect/src/net/ess3/protect/EssentialsProtectEntityListener.java +++ b/EssentialsProtect/src/net/ess3/protect/EssentialsProtectEntityListener.java @@ -36,23 +36,18 @@ public class EssentialsProtectEntityListener implements Listener { final DamageCause cause = event.getCause(); - if (cause == DamageCause.CONTACT - && (Permissions.PREVENTDAMAGE_CONTACT.isAuthorized(user) - && !Permissions.PREVENTDAMAGE_NONE.isAuthorized(user))) + if (cause == DamageCause.CONTACT && (Permissions.PREVENTDAMAGE_CONTACT.isAuthorized(user) && !Permissions.PREVENTDAMAGE_NONE.isAuthorized(user))) { event.setCancelled(true); return; } - if (cause == DamageCause.LAVA - && (Permissions.PREVENTDAMAGE_LAVADAMAGE.isAuthorized(user) - && !Permissions.PREVENTDAMAGE_NONE.isAuthorized(user))) + if (cause == DamageCause.LAVA && (Permissions.PREVENTDAMAGE_LAVADAMAGE.isAuthorized(user) && !Permissions.PREVENTDAMAGE_NONE.isAuthorized(user))) { event.setCancelled(true); return; } - if (cause == DamageCause.BLOCK_EXPLOSION - && (Permissions.PREVENTDAMAGE_TNT.isAuthorized(user) - && !Permissions.PREVENTDAMAGE_NONE.isAuthorized(user))) + if (cause == DamageCause.BLOCK_EXPLOSION && (Permissions.PREVENTDAMAGE_TNT.isAuthorized(user) && !Permissions.PREVENTDAMAGE_NONE.isAuthorized( + user))) { event.setCancelled(true); return; @@ -66,52 +61,44 @@ public class EssentialsProtectEntityListener implements Listener final Player attacker = eAttack instanceof Player ? (Player)eAttack : null; // PVP Settings - if (target instanceof Player && eAttack instanceof Player - && (!Permissions.PVP.isAuthorized(user) || !Permissions.PVP.isAuthorized(attacker))) + if (target instanceof Player && eAttack instanceof Player && (!Permissions.PVP.isAuthorized(user) || !Permissions.PVP.isAuthorized(attacker))) { event.setCancelled(true); return; } //Creeper explode prevention - if (eAttack instanceof Creeper && settings.getData().getPrevent().isCreeperExplosion() - || (Permissions.PREVENTDAMAGE_CREEPER.isAuthorized(user) - && !Permissions.PREVENTDAMAGE_NONE.isAuthorized(user))) + if (eAttack instanceof Creeper && settings.getData().getPrevent().isCreeperExplosion() || (Permissions.PREVENTDAMAGE_CREEPER.isAuthorized( + user) && !Permissions.PREVENTDAMAGE_NONE.isAuthorized(user))) { event.setCancelled(true); return; } - if ((event.getEntity() instanceof Fireball || event.getEntity() instanceof SmallFireball) - && (Permissions.PREVENTDAMAGE_FIREBALL.isAuthorized(user) - && !Permissions.PREVENTDAMAGE_NONE.isAuthorized(user))) + if ((event.getEntity() instanceof Fireball || event.getEntity() instanceof SmallFireball) && (Permissions.PREVENTDAMAGE_FIREBALL.isAuthorized( + user) && !Permissions.PREVENTDAMAGE_NONE.isAuthorized(user))) { event.setCancelled(true); return; } - - if ((event.getEntity() instanceof WitherSkull - && Permissions.PREVENTDAMAGE_WITHERSKULL.isAuthorized(user) - && !Permissions.PREVENTDAMAGE_NONE.isAuthorized(user))) + + if ((event.getEntity() instanceof WitherSkull && Permissions.PREVENTDAMAGE_WITHERSKULL.isAuthorized( + user) && !Permissions.PREVENTDAMAGE_NONE.isAuthorized(user))) { event.setCancelled(true); return; } - if (eAttack instanceof TNTPrimed - && (Permissions.PREVENTDAMAGE_TNT.isAuthorized(user) - && !Permissions.PREVENTDAMAGE_NONE.isAuthorized(user))) + if (eAttack instanceof TNTPrimed && (Permissions.PREVENTDAMAGE_TNT.isAuthorized(user) && !Permissions.PREVENTDAMAGE_NONE.isAuthorized(user))) { event.setCancelled(true); return; } - if (edEvent.getDamager() instanceof Projectile - && ((Permissions.PREVENTDAMAGE_PROJECTILES.isAuthorized(user) - && !Permissions.PREVENTDAMAGE_NONE.isAuthorized(user)) - || (((Projectile)edEvent.getDamager()).getShooter() instanceof Player - && (!Permissions.PVP.isAuthorized(user) - || !Permissions.PVP.isAuthorized((Player)((Projectile)edEvent.getDamager()).getShooter()))))) + if (edEvent.getDamager() instanceof Projectile && ((Permissions.PREVENTDAMAGE_PROJECTILES.isAuthorized( + user) && !Permissions.PREVENTDAMAGE_NONE.isAuthorized( + user)) || (((Projectile)edEvent.getDamager()).getShooter() instanceof Player && (!Permissions.PVP.isAuthorized( + user) || !Permissions.PVP.isAuthorized((Player)((Projectile)edEvent.getDamager()).getShooter()))))) { event.setCancelled(true); return; @@ -121,45 +108,35 @@ public class EssentialsProtectEntityListener implements Listener final DamageCause cause = event.getCause(); if (target instanceof Player) { - if (cause == DamageCause.FALL - && (Permissions.PREVENTDAMAGE_FALL.isAuthorized(user) - && !Permissions.PREVENTDAMAGE_NONE.isAuthorized(user))) + if (cause == DamageCause.FALL && (Permissions.PREVENTDAMAGE_FALL.isAuthorized(user) && !Permissions.PREVENTDAMAGE_NONE.isAuthorized(user))) { event.setCancelled(true); return; } - if (cause == DamageCause.SUFFOCATION - && (Permissions.PREVENTDAMAGE_SUFFOCATION.isAuthorized(user) - && !Permissions.PREVENTDAMAGE_NONE.isAuthorized(user))) + if (cause == DamageCause.SUFFOCATION && (Permissions.PREVENTDAMAGE_SUFFOCATION.isAuthorized(user) && !Permissions.PREVENTDAMAGE_NONE.isAuthorized( + user))) { event.setCancelled(true); return; } - if ((cause == DamageCause.FIRE - || cause == DamageCause.FIRE_TICK) - && (Permissions.PREVENTDAMAGE_FIRE.isAuthorized(user) - && !Permissions.PREVENTDAMAGE_NONE.isAuthorized(user))) + if ((cause == DamageCause.FIRE || cause == DamageCause.FIRE_TICK) && (Permissions.PREVENTDAMAGE_FIRE.isAuthorized( + user) && !Permissions.PREVENTDAMAGE_NONE.isAuthorized(user))) { event.setCancelled(true); return; } - if (cause == DamageCause.DROWNING - && (Permissions.PREVENTDAMAGE_DROWNING.isAuthorized(user) - && !Permissions.PREVENTDAMAGE_NONE.isAuthorized(user))) + if (cause == DamageCause.DROWNING && (Permissions.PREVENTDAMAGE_DROWNING.isAuthorized(user) && !Permissions.PREVENTDAMAGE_NONE.isAuthorized(user))) { event.setCancelled(true); return; } - if (cause == DamageCause.LIGHTNING - && (Permissions.PREVENTDAMAGE_LIGHTNING.isAuthorized(user) - && !Permissions.PREVENTDAMAGE_NONE.isAuthorized(user))) + if (cause == DamageCause.LIGHTNING && (Permissions.PREVENTDAMAGE_LIGHTNING.isAuthorized(user) && !Permissions.PREVENTDAMAGE_NONE.isAuthorized( + user))) { event.setCancelled(true); } - if (cause == DamageCause.WITHER - && (Permissions.PREVENTDAMAGE_WITHER.isAuthorized(user)) - && !Permissions.PREVENTDAMAGE_NONE.isAuthorized(user)) + if (cause == DamageCause.WITHER && (Permissions.PREVENTDAMAGE_WITHER.isAuthorized(user)) && !Permissions.PREVENTDAMAGE_NONE.isAuthorized(user)) { event.setCancelled(true); return; @@ -173,41 +150,33 @@ public class EssentialsProtectEntityListener implements Listener final ProtectHolder settings = prot.getSettings(); final int maxHeight = settings.getData().getCreeperMaxHeight(); - if (event.getEntity() instanceof EnderDragon - && settings.getData().getPrevent().isEnderdragonBlockdamage()) + if (event.getEntity() instanceof EnderDragon && settings.getData().getPrevent().isEnderdragonBlockdamage()) { event.setCancelled(true); return; } - else if (event.getEntity() instanceof Wither - && settings.getData().getPrevent().isWitherSpawnExplosion()) + else if (event.getEntity() instanceof Wither && settings.getData().getPrevent().isWitherSpawnExplosion()) { event.setCancelled(true); return; } - else if (event.getEntity() instanceof Creeper - && (settings.getData().getPrevent().isCreeperExplosion() - || settings.getData().getPrevent().isCreeperBlockdamage() - || (maxHeight >= 0 && event.getLocation().getBlockY() > maxHeight))) + else if (event.getEntity() instanceof Creeper && (settings.getData().getPrevent().isCreeperExplosion() || settings.getData().getPrevent().isCreeperBlockdamage() || (maxHeight >= 0 && event.getLocation().getBlockY() > maxHeight))) { event.setCancelled(true); event.getLocation().getWorld().createExplosion(event.getLocation(), 0F); return; } - else if (event.getEntity() instanceof TNTPrimed - && settings.getData().getPrevent().isTntExplosion()) + else if (event.getEntity() instanceof TNTPrimed && settings.getData().getPrevent().isTntExplosion()) { event.setCancelled(true); return; } - else if ((event.getEntity() instanceof Fireball || event.getEntity() instanceof SmallFireball) - && settings.getData().getPrevent().isFireballExplosion()) + else if ((event.getEntity() instanceof Fireball || event.getEntity() instanceof SmallFireball) && settings.getData().getPrevent().isFireballExplosion()) { event.setCancelled(true); return; } - else if ((event.getEntity() instanceof WitherSkull) - && settings.getData().getPrevent().isWitherskullExplosion()) + else if ((event.getEntity() instanceof WitherSkull) && settings.getData().getPrevent().isWitherskullExplosion()) { event.setCancelled(true); return; @@ -217,23 +186,17 @@ public class EssentialsProtectEntityListener implements Listener @EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true) public void onEntityTarget(final EntityTargetEvent event) { - final Entity entity = event.getTarget(); - if(entity == null) + 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 - || event.getReason() == TargetReason.TARGET_ATTACKED_ENTITY - || event.getReason() == TargetReason.PIG_ZOMBIE_TARGET - || event.getReason() == TargetReason.RANDOM_TARGET - || event.getReason() == TargetReason.TARGET_ATTACKED_OWNER - || event.getReason() == TargetReason.OWNER_ATTACKED_TARGET) - && !prot.getSettings().getData().getPrevent().isEntitytarget() - && !Permissions.ENTITY_TARGET_BYPASS.isAuthorized(user, event.getEntity().getType().getName().toLowerCase())) + if ((event.getReason() == TargetReason.CLOSEST_PLAYER || event.getReason() == TargetReason.TARGET_ATTACKED_ENTITY || event.getReason() == TargetReason.PIG_ZOMBIE_TARGET || event.getReason() == TargetReason.RANDOM_TARGET || event.getReason() == TargetReason.TARGET_ATTACKED_OWNER || event.getReason() == TargetReason.OWNER_ATTACKED_TARGET) && !prot.getSettings().getData().getPrevent().isEntitytarget() && !Permissions.ENTITY_TARGET_BYPASS.isAuthorized( + user, event.getEntity().getType().getName().toLowerCase())) { event.setCancelled(true); } @@ -244,8 +207,7 @@ public class EssentialsProtectEntityListener implements Listener public void onExplosionPrime(final ExplosionPrimeEvent event) { final ProtectHolder settings = prot.getSettings(); - if ((event.getEntity() instanceof Fireball || event.getEntity() instanceof SmallFireball) - && settings.getData().getPrevent().isFireballFire()) + if ((event.getEntity() instanceof Fireball || event.getEntity() instanceof SmallFireball) && settings.getData().getPrevent().isFireballFire()) { event.setFire(false); } |