Don't run AntiBuild checks on NPCs (#5365)

This commit is contained in:
Josh Roy 2023-05-26 21:54:46 -04:00 committed by GitHub
parent 2828901927
commit a4fb02f3e6
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 15 additions and 0 deletions

View File

@ -192,6 +192,10 @@ public class EssentialsAntiBuildListener implements Listener {
@EventHandler(priority = EventPriority.HIGH, ignoreCancelled = true)
public void onItemFrameInteract(final PlayerInteractEntityEvent event) {
if (event.getPlayer().hasMetadata("NPC")) {
return;
}
final User user = ess.getUser(event.getPlayer());
if (!(event.getRightClicked() instanceof ItemFrame)) {
@ -221,6 +225,10 @@ public class EssentialsAntiBuildListener implements Listener {
@EventHandler(priority = EventPriority.HIGH, ignoreCancelled = true)
public void onArmorStandInteract(final PlayerInteractAtEntityEvent event) {
if (event.getPlayer().hasMetadata("NPC")) {
return;
}
final User user = ess.getUser(event.getPlayer());
if (!(event.getRightClicked() instanceof ArmorStand)) {
@ -319,6 +327,10 @@ public class EssentialsAntiBuildListener implements Listener {
@EventHandler(priority = EventPriority.LOW)
public void onPlayerInteract(final PlayerInteractEvent event) {
if (event.getPlayer().hasMetadata("NPC")) {
return;
}
// Do not return if cancelled, because the interact event has 2 cancelled states.
final User user = ess.getUser(event.getPlayer());
final ItemStack item = event.getItem();
@ -415,6 +427,9 @@ public class EssentialsAntiBuildListener implements Listener {
private class PlayerPickupItemListener implements Listener {
@EventHandler(priority = EventPriority.LOW, ignoreCancelled = true)
public void onPlayerPickupItem(final PlayerPickupItemEvent event) {
if (event.getPlayer().hasMetadata("NPC")) {
return;
}
final User user = ess.getUser(event.getPlayer());
final ItemStack item = event.getItem().getItemStack();