mirror of
https://github.com/EssentialsX/Essentials.git
synced 2025-02-01 21:11:44 +01:00
Correct antibuild perm check
(still need to abort interact/use checks on block place)
This commit is contained in:
parent
2f8f3aaa8d
commit
e359e8ab6e
@ -36,7 +36,7 @@ public class EssentialsAntiBuildListener implements Listener
|
|||||||
|
|
||||||
private boolean metaPermCheck(User user, String action, int blockId, byte data)
|
private boolean metaPermCheck(User user, String action, int blockId, byte data)
|
||||||
{
|
{
|
||||||
String blockPerm = "essentials.build." + action + blockId;
|
String blockPerm = "essentials.build." + action + "." + blockId;
|
||||||
String dataPerm = blockPerm + ":" + data;
|
String dataPerm = blockPerm + ":" + data;
|
||||||
|
|
||||||
if (user.isAuthorized(dataPerm))
|
if (user.isAuthorized(dataPerm))
|
||||||
@ -66,7 +66,7 @@ public class EssentialsAntiBuildListener implements Listener
|
|||||||
final User user = ess.getUser(event.getPlayer());
|
final User user = ess.getUser(event.getPlayer());
|
||||||
|
|
||||||
if (prot.getSettingBool(AntiBuildConfig.disable_build) && !user.canBuild() && !user.isAuthorized("essentials.build")
|
if (prot.getSettingBool(AntiBuildConfig.disable_build) && !user.canBuild() && !user.isAuthorized("essentials.build")
|
||||||
&& metaPermCheck(user, "place", event.getBlock()))
|
&& !metaPermCheck(user, "place", event.getBlock()))
|
||||||
{
|
{
|
||||||
event.setCancelled(true);
|
event.setCancelled(true);
|
||||||
return;
|
return;
|
||||||
@ -98,7 +98,7 @@ public class EssentialsAntiBuildListener implements Listener
|
|||||||
final User user = ess.getUser(event.getPlayer());
|
final User user = ess.getUser(event.getPlayer());
|
||||||
|
|
||||||
if (prot.getSettingBool(AntiBuildConfig.disable_build) && !user.canBuild() && !user.isAuthorized("essentials.build")
|
if (prot.getSettingBool(AntiBuildConfig.disable_build) && !user.canBuild() && !user.isAuthorized("essentials.build")
|
||||||
&& metaPermCheck(user, "break", event.getBlock()))
|
&& !metaPermCheck(user, "break", event.getBlock()))
|
||||||
{
|
{
|
||||||
event.setCancelled(true);
|
event.setCancelled(true);
|
||||||
return;
|
return;
|
||||||
@ -191,7 +191,7 @@ public class EssentialsAntiBuildListener implements Listener
|
|||||||
if (prot.getSettingBool(AntiBuildConfig.disable_use) && !user.canBuild() && !user.isAuthorized("essentials.interact") && !user.isAuthorized("essentials.build"))
|
if (prot.getSettingBool(AntiBuildConfig.disable_use) && !user.canBuild() && !user.isAuthorized("essentials.interact") && !user.isAuthorized("essentials.build"))
|
||||||
{
|
{
|
||||||
|
|
||||||
if (metaPermCheck(user, "interact", event.getClickedBlock()))
|
if (!metaPermCheck(user, "interact", event.getClickedBlock()))
|
||||||
{
|
{
|
||||||
event.setUseInteractedBlock(Result.DENY);
|
event.setUseInteractedBlock(Result.DENY);
|
||||||
if (ess.getSettings().warnOnBuildDisallow())
|
if (ess.getSettings().warnOnBuildDisallow())
|
||||||
@ -199,7 +199,7 @@ public class EssentialsAntiBuildListener implements Listener
|
|||||||
user.sendMessage(_("buildAlert"));
|
user.sendMessage(_("buildAlert"));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (event.hasItem() && metaPermCheck(user, "interact", event.getItem().getTypeId(), event.getItem().getData().getData()))
|
if (event.hasItem() && !metaPermCheck(user, "use", event.getItem().getTypeId(), event.getItem().getData().getData()))
|
||||||
{
|
{
|
||||||
event.setUseItemInHand(Result.DENY);
|
event.setUseItemInHand(Result.DENY);
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user