mirror of
https://github.com/EngineHub/WorldGuard.git
synced 2024-11-28 05:25:20 +01:00
Allowed blocking weapon usage with the blacklist.
This commit is contained in:
parent
b95a7f063b
commit
e35596b0fa
@ -32,9 +32,11 @@
|
|||||||
import org.bukkit.event.painting.PaintingBreakByEntityEvent;
|
import org.bukkit.event.painting.PaintingBreakByEntityEvent;
|
||||||
import org.bukkit.event.painting.PaintingBreakEvent;
|
import org.bukkit.event.painting.PaintingBreakEvent;
|
||||||
import org.bukkit.event.painting.PaintingPlaceEvent;
|
import org.bukkit.event.painting.PaintingPlaceEvent;
|
||||||
|
import org.bukkit.inventory.ItemStack;
|
||||||
import org.bukkit.plugin.PluginManager;
|
import org.bukkit.plugin.PluginManager;
|
||||||
import com.sk89q.worldedit.Vector;
|
import com.sk89q.worldedit.Vector;
|
||||||
import com.sk89q.worldedit.blocks.BlockType;
|
import com.sk89q.worldedit.blocks.BlockType;
|
||||||
|
import com.sk89q.worldguard.blacklist.events.ItemUseBlacklistEvent;
|
||||||
import com.sk89q.worldguard.protection.ApplicableRegionSet;
|
import com.sk89q.worldguard.protection.ApplicableRegionSet;
|
||||||
import com.sk89q.worldguard.protection.flags.DefaultFlag;
|
import com.sk89q.worldguard.protection.flags.DefaultFlag;
|
||||||
import com.sk89q.worldguard.protection.managers.RegionManager;
|
import com.sk89q.worldguard.protection.managers.RegionManager;
|
||||||
@ -154,6 +156,26 @@ private void onEntityDamageByBlock(EntityDamageByBlockEvent event) {
|
|||||||
private void onEntityDamageByEntity(EntityDamageByEntityEvent event) {
|
private void onEntityDamageByEntity(EntityDamageByEntityEvent event) {
|
||||||
Entity attacker = event.getDamager();
|
Entity attacker = event.getDamager();
|
||||||
Entity defender = event.getEntity();
|
Entity defender = event.getEntity();
|
||||||
|
|
||||||
|
if (attacker instanceof Player) {
|
||||||
|
Player player = (Player) attacker;
|
||||||
|
|
||||||
|
ConfigurationManager cfg = plugin.getGlobalStateManager();
|
||||||
|
WorldConfiguration wcfg = cfg.get(player.getWorld());
|
||||||
|
|
||||||
|
ItemStack held = player.getInventory().getItemInHand();
|
||||||
|
|
||||||
|
if (held != null) {
|
||||||
|
if (wcfg.getBlacklist() != null) {
|
||||||
|
if (!wcfg.getBlacklist().check(
|
||||||
|
new ItemUseBlacklistEvent(plugin.wrapPlayer(player),
|
||||||
|
toVector(player.getLocation()), held.getTypeId()), false, false)) {
|
||||||
|
event.setCancelled(true);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if (defender instanceof Player) {
|
if (defender instanceof Player) {
|
||||||
Player player = (Player) defender;
|
Player player = (Player) defender;
|
||||||
|
Loading…
Reference in New Issue
Block a user