prevent interacting with cauldrons w/o container trust
This commit is contained in:
parent
6d14031a02
commit
5e8bbe75c3
|
|
@ -59,6 +59,7 @@ import org.bukkit.event.EventHandler;
|
||||||
import org.bukkit.event.EventPriority;
|
import org.bukkit.event.EventPriority;
|
||||||
import org.bukkit.event.Listener;
|
import org.bukkit.event.Listener;
|
||||||
import org.bukkit.event.block.Action;
|
import org.bukkit.event.block.Action;
|
||||||
|
import org.bukkit.event.block.CauldronLevelChangeEvent;
|
||||||
import org.bukkit.event.entity.EntityDamageByEntityEvent;
|
import org.bukkit.event.entity.EntityDamageByEntityEvent;
|
||||||
import org.bukkit.event.entity.EntityDamageEvent;
|
import org.bukkit.event.entity.EntityDamageEvent;
|
||||||
import org.bukkit.event.entity.PlayerDeathEvent;
|
import org.bukkit.event.entity.PlayerDeathEvent;
|
||||||
|
|
@ -999,6 +1000,29 @@ class PlayerEventHandler implements Listener
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@EventHandler(ignoreCancelled = true, priority = EventPriority.LOWEST)
|
||||||
|
public void onPlayerBucketatCauldron(CauldronLevelChangeEvent event)
|
||||||
|
{
|
||||||
|
if (!instance.claimsEnabledForWorld(event.getBlock().getWorld())) return;
|
||||||
|
Entity entity = event.getEntity();
|
||||||
|
Block block = event.getBlock();
|
||||||
|
if (entity == null) return;
|
||||||
|
if (entity instanceof Player player) {
|
||||||
|
Claim claim = dataStore.getClaimAt(block.getLocation(), false, null);
|
||||||
|
if (claim == null)
|
||||||
|
return;
|
||||||
|
|
||||||
|
Supplier<String> allowContainer = claim.checkPermission(player, ClaimPermission.Inventory, event);
|
||||||
|
|
||||||
|
if (allowContainer != null)
|
||||||
|
{
|
||||||
|
event.setCancelled(true);
|
||||||
|
GriefPrevention.sendMessage(player, TextMode.Err, allowContainer.get());
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
//when a player interacts with the world
|
//when a player interacts with the world
|
||||||
@EventHandler(priority = EventPriority.LOWEST)
|
@EventHandler(priority = EventPriority.LOWEST)
|
||||||
void onPlayerInteract(PlayerInteractEvent event)
|
void onPlayerInteract(PlayerInteractEvent event)
|
||||||
|
|
|
||||||
|
|
@ -207,13 +207,13 @@ commands:
|
||||||
aliases: [kfc]
|
aliases: [kfc]
|
||||||
permission: griefprevention.kickfromclaim
|
permission: griefprevention.kickfromclaim
|
||||||
permissions:
|
permissions:
|
||||||
griefprevention.createclaims:
|
griefprevention.createclaims:
|
||||||
description: Grants permission to create claims.
|
description: Grants permission to create claims.
|
||||||
default: true
|
default: true
|
||||||
griefprevention.admin.*:
|
griefprevention.admin.*:
|
||||||
description: Grants all administrative functionality.
|
description: Grants all administrative functionality.
|
||||||
children:
|
children:
|
||||||
griefprevention.restorenature: true
|
griefprevention.restorenature: true
|
||||||
griefprevention.restorenatureaggressive: true
|
griefprevention.restorenatureaggressive: true
|
||||||
griefprevention.ignoreclaims: true
|
griefprevention.ignoreclaims: true
|
||||||
griefprevention.adminclaims: true
|
griefprevention.adminclaims: true
|
||||||
|
|
@ -242,7 +242,7 @@ permissions:
|
||||||
griefprevention.kickfromclaim: true
|
griefprevention.kickfromclaim: true
|
||||||
griefprevention.kickfromclaimexempt: true
|
griefprevention.kickfromclaimexempt: true
|
||||||
griefprevention.petkick: true
|
griefprevention.petkick: true
|
||||||
griefprevention.siegeimmune:
|
griefprevention.siegeimmune:
|
||||||
description: Makes a player immune to /Siege.
|
description: Makes a player immune to /Siege.
|
||||||
default: op
|
default: op
|
||||||
griefprevention.givepet:
|
griefprevention.givepet:
|
||||||
|
|
@ -342,11 +342,11 @@ permissions:
|
||||||
description: Players with this permission can teleport into and out of besieged areas.
|
description: Players with this permission can teleport into and out of besieged areas.
|
||||||
default: op
|
default: op
|
||||||
griefprevention.kickfromclaim:
|
griefprevention.kickfromclaim:
|
||||||
default: op
|
default: op
|
||||||
description: Allows the use of /kickfromclaim
|
description: Allows the use of /kickfromclaim
|
||||||
griefprevention.kickfromclaimexempt:
|
griefprevention.kickfromclaimexempt:
|
||||||
default: op
|
default: op
|
||||||
description: Players with this perm cannot be kicked out of claims.
|
description: Players with this perm cannot be kicked out of claims.
|
||||||
griefprevention.petkick:
|
griefprevention.petkick:
|
||||||
default: op
|
default: op
|
||||||
description: Grants access to /petkick
|
description: Grants access to /petkick
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user