diff options
author | ementalo <ementalo@e251c2fe-e539-e718-e476-b85c1f46cddb> | 2011-03-30 14:28:46 +0000 |
---|---|---|
committer | ementalo <ementalo@e251c2fe-e539-e718-e476-b85c1f46cddb> | 2011-03-30 14:28:46 +0000 |
commit | 243ff48778cdee3fc0ee3b096ab9c441a50abc84 (patch) | |
tree | 66087969d3e5cf606b70a7aca3fe02b0215c22cc /EssentialsProtect/src/com/earth2me/essentials/protect/EssentialsProtectPlayerListener.java | |
parent | c2f7853ec910d672cb1484dc8215404a6091c47d (diff) | |
download | Essentials-243ff48778cdee3fc0ee3b096ab9c441a50abc84.tar Essentials-243ff48778cdee3fc0ee3b096ab9c441a50abc84.tar.gz Essentials-243ff48778cdee3fc0ee3b096ab9c441a50abc84.tar.lz Essentials-243ff48778cdee3fc0ee3b096ab9c441a50abc84.tar.xz Essentials-243ff48778cdee3fc0ee3b096ab9c441a50abc84.zip |
gah
git-svn-id: https://svn.java.net/svn/essentials~svn/trunk@1036 e251c2fe-e539-e718-e476-b85c1f46cddb
Diffstat (limited to 'EssentialsProtect/src/com/earth2me/essentials/protect/EssentialsProtectPlayerListener.java')
-rw-r--r-- | EssentialsProtect/src/com/earth2me/essentials/protect/EssentialsProtectPlayerListener.java | 33 |
1 files changed, 27 insertions, 6 deletions
diff --git a/EssentialsProtect/src/com/earth2me/essentials/protect/EssentialsProtectPlayerListener.java b/EssentialsProtect/src/com/earth2me/essentials/protect/EssentialsProtectPlayerListener.java index 61419f69a..c75bb6324 100644 --- a/EssentialsProtect/src/com/earth2me/essentials/protect/EssentialsProtectPlayerListener.java +++ b/EssentialsProtect/src/com/earth2me/essentials/protect/EssentialsProtectPlayerListener.java @@ -2,7 +2,9 @@ package com.earth2me.essentials.protect; import com.earth2me.essentials.Essentials; import com.earth2me.essentials.User; +import org.bukkit.ChatColor; import org.bukkit.block.Block; +import org.bukkit.event.player.PlayerInteractEvent; import org.bukkit.event.player.PlayerItemEvent; import org.bukkit.event.player.PlayerListener; import org.bukkit.inventory.ItemStack; @@ -29,18 +31,36 @@ public class EssentialsProtectPlayerListener extends PlayerListener } @Override - public void onPlayerItem(PlayerItemEvent event) + public void onPlayerInteract(PlayerInteractEvent event) { - if(event.isCancelled()) return; + initialize(); + if (event.isCancelled()) return; ItemStack item = event.getItem(); User user = User.get(event.getPlayer()); - Block blockPlaced = event.getBlockClicked(); + Block blockClicked = event.getClickedBlock(); + + if (EssentialsProtect.playerSettings.get("protect.disable.build") && !user.canBuild()) + { + event.setCancelled(true); + return; + } + if (EssentialsProtect.checkProtectionItems(EssentialsProtect.usageList, item.getTypeId()) && !user.isAuthorized("essentials.protect.exemptusage")) { event.setCancelled(true); return; } + if (user.isAuthorized("essentials.protect.admin")) + { + String ownerName = spData.getBlockOwner(user.getWorld().getName(), user.getName(), + blockClicked); + if (ownerName != null) + { + user.sendMessage(ChatColor.GOLD + "[EssentialsProtect] Protection owner: " + + ownerName); + } + } if (EssentialsProtect.onUseAlert.contains(String.valueOf(item.getTypeId()))) { parent.alert(user, item.getType().toString(), "used: "); @@ -53,9 +73,9 @@ public class EssentialsProtectPlayerListener extends PlayerListener if (user.isAuthorized("essentials.protect")) { - signBlockX = blockPlaced.getX(); - signBlockY = blockPlaced.getY(); - signBlockZ = blockPlaced.getZ(); + signBlockX = blockClicked.getX(); + signBlockY = blockClicked.getY(); + signBlockZ = blockClicked.getZ(); initialize(); spData.insertProtectionIntoDb(user.getWorld().getName(), user.getName(), signBlockX, @@ -69,5 +89,6 @@ public class EssentialsProtectPlayerListener extends PlayerListener } } } + } } |