From 002430a1471c604cd06e9d639be819e73a2e5c47 Mon Sep 17 00:00:00 2001 From: Acrobot Date: Fri, 24 Aug 2012 10:43:46 +0200 Subject: [PATCH] Added Residence Chest protection --- .../Plugins/ResidenceChestProtection.java | 34 +++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 com/Acrobot/ChestShop/Plugins/ResidenceChestProtection.java diff --git a/com/Acrobot/ChestShop/Plugins/ResidenceChestProtection.java b/com/Acrobot/ChestShop/Plugins/ResidenceChestProtection.java new file mode 100644 index 0000000..56166b9 --- /dev/null +++ b/com/Acrobot/ChestShop/Plugins/ResidenceChestProtection.java @@ -0,0 +1,34 @@ +package com.Acrobot.ChestShop.Plugins; + +import com.Acrobot.ChestShop.Events.Protection.ProtectionCheckEvent; +import com.bekvon.bukkit.residence.Residence; +import com.bekvon.bukkit.residence.protection.ClaimedResidence; +import org.bukkit.block.Block; +import org.bukkit.entity.Player; +import org.bukkit.event.Event; +import org.bukkit.event.EventHandler; +import org.bukkit.event.Listener; + +/** + * @author TOOTHPlCK1 + */ +public class ResidenceChestProtection implements Listener { + + @EventHandler + public static void onProtectionCheck(ProtectionCheckEvent event) { + if (event.getResult() == Event.Result.DENY) { + return; + } + + Block block = event.getBlock(); + Player player = event.getPlayer(); + ClaimedResidence res = Residence.getResidenceManager().getByLoc(block.getLocation()); + + if (res != null) { + if (!res.getPermissions().playerHas(player.getName(), "container", false) && !Residence.isResAdminOn(player)) { + //Doesn't have permissions to that chest. + event.setResult(Event.Result.DENY); + } + } + } +} \ No newline at end of file