mirror of
https://github.com/essentials/Essentials.git
synced 2025-08-13 18:14:38 +02:00
Prevent changes (wither support)
This commit is contained in:
@@ -447,6 +447,10 @@ protect:
|
||||
fireball-explosion: false
|
||||
fireball-fire: false
|
||||
fireball-playerdamage: false
|
||||
witherskull-explosion: flase
|
||||
witherskull-playerdamage: false
|
||||
wither-spawnexplosion: flase
|
||||
wither-blockreplace: false
|
||||
creeper-explosion: false
|
||||
creeper-playerdamage: false
|
||||
creeper-blockdamage: false
|
||||
|
@@ -23,6 +23,9 @@ public class Prevent implements StorageObject
|
||||
private boolean creeperExplosion = false;
|
||||
private boolean creeperBlockdamage = false;
|
||||
private boolean enderdragonBlockdamage = false;
|
||||
private boolean WitherSpawnExplosion = false;
|
||||
private boolean WitherSkullExplosion = false;
|
||||
private boolean WitherBlockreplace = false;
|
||||
private boolean endermanPickup = false;
|
||||
private boolean villagerDeath = false;
|
||||
@Comment(
|
||||
|
@@ -89,6 +89,14 @@ public class EssentialsProtectEntityListener implements Listener
|
||||
event.setCancelled(true);
|
||||
return;
|
||||
}
|
||||
|
||||
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)
|
||||
@@ -171,6 +179,12 @@ public class EssentialsProtectEntityListener implements Listener
|
||||
event.setCancelled(true);
|
||||
return;
|
||||
}
|
||||
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()
|
||||
@@ -192,6 +206,12 @@ public class EssentialsProtectEntityListener implements Listener
|
||||
event.setCancelled(true);
|
||||
return;
|
||||
}
|
||||
else if ((event.getEntity() instanceof WitherSkull)
|
||||
&& settings.getData().getPrevent().isWitherSkullExplosion())
|
||||
{
|
||||
event.setCancelled(true);
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
@EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true)
|
||||
@@ -239,5 +259,10 @@ public class EssentialsProtectEntityListener implements Listener
|
||||
{
|
||||
event.setCancelled(true);
|
||||
}
|
||||
if (event.getEntityType() == EntityType.WITHER && settings.getData().getPrevent().isWitherBlockreplace())
|
||||
{
|
||||
event.setCancelled(true);
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -23,6 +23,7 @@ public enum Permissions implements IPermission
|
||||
PREVENTDAMAGE_DROWNING(PermissionDefault.FALSE),
|
||||
PREVENTDAMAGE_LIGHTNING(PermissionDefault.FALSE),
|
||||
PREVENTDAMAGE_WITHER(PermissionDefault.FALSE),
|
||||
PREVENTDAMAGE_WITHERSKULL(PermissionDefault.FALSE),
|
||||
PREVENTDAMAGE_NONE(PermissionDefault.FALSE),
|
||||
USEFLINTSTEEL(PermissionDefault.TRUE);
|
||||
private static final String base = "essentials.protect.";
|
||||
|
Reference in New Issue
Block a user