1
0
mirror of https://github.com/essentials/Essentials.git synced 2025-08-24 07:13:17 +02:00

Merge pull request #432 from GunfighterJ/master

Fix spaces into tabs.
This commit is contained in:
Iaccidentally
2013-04-01 14:18:16 -07:00
3 changed files with 312 additions and 312 deletions

View File

@@ -11,33 +11,33 @@ import net.ess3.storage.StorageObject;
public class Prevent implements StorageObject public class Prevent implements StorageObject
{ {
private boolean lavaFlow = false; private boolean lavaFlow = false;
private boolean waterFlow = false; private boolean waterFlow = false;
// private boolean waterbucketFlow = false; TODO: Test if this still works // private boolean waterbucketFlow = false; TODO: Test if this still works
private boolean firespread = true; private boolean firespread = true;
private boolean lavaFirespread = true; private boolean lavaFirespread = true;
private boolean lightningFirespread = true; private boolean lightningFirespread = true;
private boolean portalCreation = false; private boolean portalCreation = false;
private boolean tntBlockdamage = false; private boolean tntBlockdamage = false;
private boolean tntPlayerdamage = false; private boolean tntPlayerdamage = false;
private boolean tntMinecartBlockdamage = false; private boolean tntMinecartBlockdamage = false;
private boolean tntMinecartPlayerdamage = false; private boolean tntMinecartPlayerdamage = false;
private boolean fireballBlockdamage = false; private boolean fireballBlockdamage = false;
private boolean fireballPlayerdamage = false; private boolean fireballPlayerdamage = false;
private boolean fireballFire = false; private boolean fireballFire = false;
private boolean creeperBlockdamage = false; private boolean creeperBlockdamage = false;
private boolean creeperPlayerdamage = false; private boolean creeperPlayerdamage = false;
private boolean enderdragonBlockdamage = false; private boolean enderdragonBlockdamage = false;
private boolean witherSpawnBlockdamage = false; private boolean witherSpawnBlockdamage = false;
private boolean witherSpawnPlayerdamage = false; private boolean witherSpawnPlayerdamage = false;
private boolean witherskullBlockdamage = false; private boolean witherskullBlockdamage = false;
private boolean witherskullPlayerdamage = false; private boolean witherskullPlayerdamage = false;
private boolean witherBlockreplace = false; private boolean witherBlockreplace = false;
private boolean endermanPickup = false; private boolean endermanPickup = false;
private boolean villagerDeath = false; private boolean villagerDeath = false;
@Comment( @Comment(
{ {
"Monsters won't follow players", "permission essentials.protect.entitytarget.bypass disables this" "Monsters won't follow players", "permission essentials.protect.entitytarget.bypass disables this"
}) })
private boolean entitytarget = false; private boolean entitytarget = false;
} }

View File

@@ -14,253 +14,253 @@ import org.bukkit.event.hanging.HangingBreakEvent;
public class EssentialsProtectEntityListener implements Listener public class EssentialsProtectEntityListener implements Listener
{ {
private final IProtect prot; private final IProtect prot;
public EssentialsProtectEntityListener(final IProtect prot) public EssentialsProtectEntityListener(final IProtect prot)
{ {
super(); super();
this.prot = prot; this.prot = prot;
} }
private Prevent getSettings() private Prevent getSettings()
{ {
return prot.getSettings().getData().getPrevent(); return prot.getSettings().getData().getPrevent();
} }
@EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true) @EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true)
public void onEntityDamage(final EntityDamageEvent event) public void onEntityDamage(final EntityDamageEvent event)
{ {
final Entity target = event.getEntity(); final Entity target = event.getEntity();
if (target instanceof Villager && getSettings().isVillagerDeath()) if (target instanceof Villager && getSettings().isVillagerDeath())
{ {
event.setCancelled(true); event.setCancelled(true);
return; return;
} }
final Player user = target instanceof Player ? (Player) target : null; final Player user = target instanceof Player ? (Player) target : null;
if (target instanceof Player && event instanceof EntityDamageByBlockEvent) if (target instanceof Player && event instanceof EntityDamageByBlockEvent)
{ {
final DamageCause cause = event.getCause(); 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); event.setCancelled(true);
return; 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); event.setCancelled(true);
return; 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); event.setCancelled(true);
return; return;
} }
} }
if (target instanceof Player && event instanceof EntityDamageByEntityEvent) if (target instanceof Player && event instanceof EntityDamageByEntityEvent)
{ {
final EntityDamageByEntityEvent edEvent = (EntityDamageByEntityEvent) event; final EntityDamageByEntityEvent edEvent = (EntityDamageByEntityEvent) event;
final Entity eAttack = edEvent.getDamager(); final Entity eAttack = edEvent.getDamager();
final Player attacker = eAttack instanceof Player ? (Player) eAttack : null; final Player attacker = eAttack instanceof Player ? (Player) eAttack : null;
// PVP Settings // 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); event.setCancelled(true);
return; return;
} }
//Player damage prevention section //Player damage prevention section
if (eAttack instanceof Creeper && getSettings().isCreeperPlayerdamage() || (Permissions.PREVENTDAMAGE_CREEPER.isAuthorized( if (eAttack instanceof Creeper && getSettings().isCreeperPlayerdamage() || (Permissions.PREVENTDAMAGE_CREEPER.isAuthorized(
user) && !Permissions.PREVENTDAMAGE_NONE.isAuthorized(user))) user) && !Permissions.PREVENTDAMAGE_NONE.isAuthorized(user)))
{ {
event.setCancelled(true); event.setCancelled(true);
return; return;
} }
if (eAttack instanceof ExplosiveMinecart && getSettings().isTntMinecartPlayerdamage() || (Permissions.PREVENTDAMAGE_TNTMINECART.isAuthorized( if (eAttack instanceof ExplosiveMinecart && getSettings().isTntMinecartPlayerdamage() || (Permissions.PREVENTDAMAGE_TNTMINECART.isAuthorized(
user) && !Permissions.PREVENTDAMAGE_NONE.isAuthorized(user))) user) && !Permissions.PREVENTDAMAGE_NONE.isAuthorized(user)))
{ {
event.setCancelled(true); event.setCancelled(true);
return; return;
} }
if ((event.getEntity() instanceof Fireball || event.getEntity() instanceof SmallFireball || event.getEntity() instanceof LargeFireball) && (Permissions.PREVENTDAMAGE_FIREBALL.isAuthorized( if ((event.getEntity() instanceof Fireball || event.getEntity() instanceof SmallFireball || event.getEntity() instanceof LargeFireball) && (Permissions.PREVENTDAMAGE_FIREBALL.isAuthorized(
user) && !Permissions.PREVENTDAMAGE_NONE.isAuthorized(user))) user) && !Permissions.PREVENTDAMAGE_NONE.isAuthorized(user)))
{ {
event.setCancelled(true); event.setCancelled(true);
return; return;
} }
if ((eAttack instanceof WitherSkull && Permissions.PREVENTDAMAGE_WITHERSKULL.isAuthorized( if ((eAttack instanceof WitherSkull && Permissions.PREVENTDAMAGE_WITHERSKULL.isAuthorized(
user) && !Permissions.PREVENTDAMAGE_NONE.isAuthorized(user))) user) && !Permissions.PREVENTDAMAGE_NONE.isAuthorized(user)))
{ {
event.setCancelled(true); event.setCancelled(true);
return; return;
} }
if ((eAttack instanceof Wither && event.getCause() == DamageCause.ENTITY_EXPLOSION) && getSettings().isWitherSpawnPlayerdamage() || (Permissions.PREVENTDAMAGE_WITHER.isAuthorized( if ((eAttack instanceof Wither && event.getCause() == DamageCause.ENTITY_EXPLOSION) && getSettings().isWitherSpawnPlayerdamage() || (Permissions.PREVENTDAMAGE_WITHER.isAuthorized(
user) && !Permissions.PREVENTDAMAGE_NONE.isAuthorized(user))) user) && !Permissions.PREVENTDAMAGE_NONE.isAuthorized(user)))
{ {
event.setCancelled(true); event.setCancelled(true);
return; 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); event.setCancelled(true);
return; return;
} }
if (edEvent.getDamager() instanceof Projectile && ((Permissions.PREVENTDAMAGE_PROJECTILES.isAuthorized( if (edEvent.getDamager() instanceof Projectile && ((Permissions.PREVENTDAMAGE_PROJECTILES.isAuthorized(
user) && !Permissions.PREVENTDAMAGE_NONE.isAuthorized( user) && !Permissions.PREVENTDAMAGE_NONE.isAuthorized(
user)) || (((Projectile) edEvent.getDamager()).getShooter() instanceof Player && (!Permissions.PVP.isAuthorized( user)) || (((Projectile) edEvent.getDamager()).getShooter() instanceof Player && (!Permissions.PVP.isAuthorized(
user) || !Permissions.PVP.isAuthorized((Player) ((Projectile) edEvent.getDamager()).getShooter()))))) user) || !Permissions.PVP.isAuthorized((Player) ((Projectile) edEvent.getDamager()).getShooter())))))
{ {
event.setCancelled(true); event.setCancelled(true);
return; return;
} }
} }
final DamageCause cause = event.getCause(); final DamageCause cause = event.getCause();
if (target instanceof Player) 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); event.setCancelled(true);
return; return;
} }
if (cause == DamageCause.SUFFOCATION && (Permissions.PREVENTDAMAGE_SUFFOCATION.isAuthorized(user) && !Permissions.PREVENTDAMAGE_NONE.isAuthorized( if (cause == DamageCause.SUFFOCATION && (Permissions.PREVENTDAMAGE_SUFFOCATION.isAuthorized(user) && !Permissions.PREVENTDAMAGE_NONE.isAuthorized(
user))) user)))
{ {
event.setCancelled(true); event.setCancelled(true);
return; return;
} }
if ((cause == DamageCause.FIRE || cause == DamageCause.FIRE_TICK) && (Permissions.PREVENTDAMAGE_FIRE.isAuthorized( if ((cause == DamageCause.FIRE || cause == DamageCause.FIRE_TICK) && (Permissions.PREVENTDAMAGE_FIRE.isAuthorized(
user) && !Permissions.PREVENTDAMAGE_NONE.isAuthorized(user))) user) && !Permissions.PREVENTDAMAGE_NONE.isAuthorized(user)))
{ {
event.setCancelled(true); event.setCancelled(true);
return; 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); event.setCancelled(true);
return; return;
} }
if (cause == DamageCause.LIGHTNING && (Permissions.PREVENTDAMAGE_LIGHTNING.isAuthorized(user) && !Permissions.PREVENTDAMAGE_NONE.isAuthorized( if (cause == DamageCause.LIGHTNING && (Permissions.PREVENTDAMAGE_LIGHTNING.isAuthorized(user) && !Permissions.PREVENTDAMAGE_NONE.isAuthorized(
user))) user)))
{ {
event.setCancelled(true); 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); event.setCancelled(true);
} }
} }
} }
@EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true) @EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true)
public void onEntityExplode(final EntityExplodeEvent event) public void onEntityExplode(final EntityExplodeEvent event)
{ {
final int maxHeight = prot.getSettings().getData().getCreeperMaxHeight(); final int maxHeight = prot.getSettings().getData().getCreeperMaxHeight();
Entity entity = event.getEntity(); Entity entity = event.getEntity();
//Block damage prevention section //Block damage prevention section
if (entity instanceof EnderDragon && getSettings().isEnderdragonBlockdamage()) if (entity instanceof EnderDragon && getSettings().isEnderdragonBlockdamage())
{ {
event.setCancelled(true); event.setCancelled(true);
} }
else if (entity instanceof Wither && getSettings().isWitherSpawnBlockdamage()) else if (entity instanceof Wither && getSettings().isWitherSpawnBlockdamage())
{ {
event.setCancelled(true); event.setCancelled(true);
} }
else if (entity instanceof Creeper && (getSettings().isCreeperBlockdamage() || getSettings().isCreeperBlockdamage() else if (entity instanceof Creeper && (getSettings().isCreeperBlockdamage() || getSettings().isCreeperBlockdamage()
|| (maxHeight >= 0 && event.getLocation().getBlockY() > maxHeight))) || (maxHeight >= 0 && event.getLocation().getBlockY() > maxHeight)))
{ {
event.setCancelled(true); event.setCancelled(true);
event.getLocation().getWorld().createExplosion(event.getLocation(), 0F); event.getLocation().getWorld().createExplosion(event.getLocation(), 0F);
} }
else if (entity instanceof TNTPrimed && getSettings().isTntBlockdamage()) else if (entity instanceof TNTPrimed && getSettings().isTntBlockdamage())
{ {
event.setCancelled(true); event.setCancelled(true);
} }
else if ((entity instanceof Fireball || entity instanceof SmallFireball) && getSettings().isFireballBlockdamage()) else if ((entity instanceof Fireball || entity instanceof SmallFireball) && getSettings().isFireballBlockdamage())
{ {
event.setCancelled(true); event.setCancelled(true);
} }
else if ((entity instanceof WitherSkull) && getSettings().isWitherskullBlockdamage()) else if ((entity instanceof WitherSkull) && getSettings().isWitherskullBlockdamage())
{ {
event.setCancelled(true); event.setCancelled(true);
} }
else if ((entity instanceof ExplosiveMinecart) && getSettings().isTntMinecartBlockdamage()) else if ((entity instanceof ExplosiveMinecart) && getSettings().isTntMinecartBlockdamage())
{ {
event.setCancelled(true); event.setCancelled(true);
} }
} }
@EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true) @EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true)
public void onEntityTarget(final EntityTargetEvent event) public void onEntityTarget(final EntityTargetEvent event)
{ {
final Entity entity = event.getTarget(); final Entity entity = event.getTarget();
if (entity == null) if (entity == null)
{ {
return; return;
} }
if (entity.getType() == EntityType.PLAYER) if (entity.getType() == EntityType.PLAYER)
{ {
final Player user = (Player) event.getTarget(); final Player user = (Player) event.getTarget();
if ((event.getReason() == TargetReason.CLOSEST_PLAYER || event.getReason() == TargetReason.TARGET_ATTACKED_ENTITY || event.getReason() == TargetReason.PIG_ZOMBIE_TARGET 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.RANDOM_TARGET || event.getReason() == TargetReason.TARGET_ATTACKED_OWNER
|| event.getReason() == TargetReason.OWNER_ATTACKED_TARGET) || event.getReason() == TargetReason.OWNER_ATTACKED_TARGET)
&& !prot.getSettings().getData().getPrevent().isEntitytarget() && !Permissions.ENTITY_TARGET_BYPASS.isAuthorized( && !prot.getSettings().getData().getPrevent().isEntitytarget() && !Permissions.ENTITY_TARGET_BYPASS.isAuthorized(
user, event.getEntity().getType().getName().toLowerCase())) user, event.getEntity().getType().getName().toLowerCase()))
{ {
event.setCancelled(true); event.setCancelled(true);
} }
} }
} }
@EventHandler(priority = EventPriority.HIGHEST) @EventHandler(priority = EventPriority.HIGHEST)
public void onExplosionPrime(final ExplosionPrimeEvent event) public void onExplosionPrime(final ExplosionPrimeEvent event)
{ {
if ((event.getEntity() instanceof Fireball || event.getEntity() instanceof SmallFireball) && getSettings().isFireballFire()) if ((event.getEntity() instanceof Fireball || event.getEntity() instanceof SmallFireball) && getSettings().isFireballFire())
{ {
event.setFire(false); event.setFire(false);
} }
} }
@EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true) @EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true)
public void onEntityChangeBlock(final EntityChangeBlockEvent event) public void onEntityChangeBlock(final EntityChangeBlockEvent event)
{ {
if (event.getEntityType() == EntityType.ENDERMAN && getSettings().isEndermanPickup()) if (event.getEntityType() == EntityType.ENDERMAN && getSettings().isEndermanPickup())
{ {
event.setCancelled(true); event.setCancelled(true);
} }
if (event.getEntityType() == EntityType.WITHER && getSettings().isWitherBlockreplace()) if (event.getEntityType() == EntityType.WITHER && getSettings().isWitherBlockreplace())
{ {
event.setCancelled(true); event.setCancelled(true);
} }
} }
@EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true) @EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true)
public void onPaintingBreak(final HangingBreakByEntityEvent event) public void onPaintingBreak(final HangingBreakByEntityEvent event)
{ {
final ProtectHolder settings = prot.getSettings(); final ProtectHolder settings = prot.getSettings();
Entity remover = event.getRemover(); Entity remover = event.getRemover();
if ((event.getCause() == HangingBreakEvent.RemoveCause.ENTITY) if ((event.getCause() == HangingBreakEvent.RemoveCause.ENTITY)
&& ((remover instanceof Creeper) && getSettings().isCreeperBlockdamage()) && ((remover instanceof Creeper) && getSettings().isCreeperBlockdamage())
|| ((remover instanceof Wither) && getSettings().isWitherSpawnBlockdamage()) || ((remover instanceof Wither) && getSettings().isWitherSpawnBlockdamage())
|| ((remover instanceof Fireball) && getSettings().isFireballBlockdamage()) || ((remover instanceof Fireball) && getSettings().isFireballBlockdamage())
|| ((remover instanceof TNTPrimed) && getSettings().isTntBlockdamage()) || ((remover instanceof TNTPrimed) && getSettings().isTntBlockdamage())
|| ((remover instanceof WitherSkull) && getSettings().isWitherskullBlockdamage()) || ((remover instanceof WitherSkull) && getSettings().isWitherskullBlockdamage())
|| ((remover instanceof ExplosiveMinecart) && getSettings().isTntMinecartBlockdamage())) || ((remover instanceof ExplosiveMinecart) && getSettings().isTntMinecartBlockdamage()))
{ {
event.setCancelled(true); event.setCancelled(true);
} }
} }
} }

View File

@@ -10,69 +10,69 @@ import org.bukkit.permissions.PermissionDefault;
public enum Permissions implements IPermission public enum Permissions implements IPermission
{ {
PVP(PermissionDefault.TRUE), PVP(PermissionDefault.TRUE),
PREVENTDAMAGE_FALL(PermissionDefault.FALSE), PREVENTDAMAGE_FALL(PermissionDefault.FALSE),
PREVENTDAMAGE_CREEPER(PermissionDefault.FALSE), PREVENTDAMAGE_CREEPER(PermissionDefault.FALSE),
PREVENTDAMAGE_CONTACT(PermissionDefault.FALSE), PREVENTDAMAGE_CONTACT(PermissionDefault.FALSE),
PREVENTDAMAGE_FIREBALL(PermissionDefault.FALSE), PREVENTDAMAGE_FIREBALL(PermissionDefault.FALSE),
PREVENTDAMAGE_PROJECTILES(PermissionDefault.FALSE), PREVENTDAMAGE_PROJECTILES(PermissionDefault.FALSE),
PREVENTDAMAGE_LAVADAMAGE(PermissionDefault.FALSE), PREVENTDAMAGE_LAVADAMAGE(PermissionDefault.FALSE),
PREVENTDAMAGE_TNT(PermissionDefault.FALSE), PREVENTDAMAGE_TNT(PermissionDefault.FALSE),
PREVENTDAMAGE_TNTMINECART(PermissionDefault.FALSE), PREVENTDAMAGE_TNTMINECART(PermissionDefault.FALSE),
PREVENTDAMAGE_SUFFOCATION(PermissionDefault.FALSE), PREVENTDAMAGE_SUFFOCATION(PermissionDefault.FALSE),
PREVENTDAMAGE_FIRE(PermissionDefault.FALSE), PREVENTDAMAGE_FIRE(PermissionDefault.FALSE),
PREVENTDAMAGE_DROWNING(PermissionDefault.FALSE), PREVENTDAMAGE_DROWNING(PermissionDefault.FALSE),
PREVENTDAMAGE_LIGHTNING(PermissionDefault.FALSE), PREVENTDAMAGE_LIGHTNING(PermissionDefault.FALSE),
PREVENTDAMAGE_WITHER(PermissionDefault.FALSE), PREVENTDAMAGE_WITHER(PermissionDefault.FALSE),
PREVENTDAMAGE_WITHERSKULL(PermissionDefault.FALSE), PREVENTDAMAGE_WITHERSKULL(PermissionDefault.FALSE),
PREVENTDAMAGE_NONE(PermissionDefault.FALSE), PREVENTDAMAGE_NONE(PermissionDefault.FALSE),
USEFLINTSTEEL(PermissionDefault.TRUE); USEFLINTSTEEL(PermissionDefault.TRUE);
private static final String base = "essentials.protect."; private static final String base = "essentials.protect.";
private final String permission; private final String permission;
private final PermissionDefault defaultPerm; private final PermissionDefault defaultPerm;
private String parent = null; private String parent = null;
private Permissions() private Permissions()
{ {
this(PermissionDefault.OP); this(PermissionDefault.OP);
} }
private Permissions(final PermissionDefault defaultPerm) private Permissions(final PermissionDefault defaultPerm)
{ {
permission = base + toString().toLowerCase(Locale.ENGLISH).replace('_', '.'); permission = base + toString().toLowerCase(Locale.ENGLISH).replace('_', '.');
this.defaultPerm = defaultPerm; this.defaultPerm = defaultPerm;
} }
@Override @Override
public String getPermissionName() public String getPermissionName()
{ {
return permission; return permission;
} }
@Override @Override
public String getParentPermission() public String getParentPermission()
{ {
if (parent != null) if (parent != null)
{ {
return parent; return parent;
} }
else else
{ {
return PermissionFactory.registerParentPermission(getPermissionName()); return PermissionFactory.registerParentPermission(getPermissionName());
} }
} }
@Override @Override
public PermissionDefault getPermissionDefault() public PermissionDefault getPermissionDefault()
{ {
return this.defaultPerm; return this.defaultPerm;
} }
@Override @Override
public boolean isAuthorized(final CommandSender sender) public boolean isAuthorized(final CommandSender sender)
{ {
return PermissionFactory.checkPermission(sender, this); return PermissionFactory.checkPermission(sender, this);
} }
public static DotStarPermission ENTITY_TARGET_BYPASS = new DotStarPermission("essentials.protect.entitytarget.bypass"); public static DotStarPermission ENTITY_TARGET_BYPASS = new DotStarPermission("essentials.protect.entitytarget.bypass");
} }