Apply build trust for entity containers.
This commit is contained in:
parent
20b341e46a
commit
a2954e8795
|
|
@ -89,6 +89,7 @@ import org.bukkit.event.hanging.HangingBreakEvent;
|
|||
import org.bukkit.event.hanging.HangingBreakEvent.RemoveCause;
|
||||
import org.bukkit.event.hanging.HangingPlaceEvent;
|
||||
import org.bukkit.event.vehicle.VehicleDamageEvent;
|
||||
import org.bukkit.inventory.InventoryHolder;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
import org.bukkit.metadata.FixedMetadataValue;
|
||||
import org.bukkit.metadata.MetadataValue;
|
||||
|
|
@ -1354,13 +1355,26 @@ public class EntityEventHandler implements Listener
|
|||
message += " " + GriefPrevention.instance.dataStore.getMessage(Messages.IgnoreClaimsAdvertisement);
|
||||
return message;
|
||||
};
|
||||
Supplier<String> noContainersReason = claim.checkPermission(attacker, ClaimPermission.Inventory, event, override);
|
||||
if (noContainersReason != null)
|
||||
//for storage entities, apply container rules (this is a potential theft)
|
||||
if (event.getVehicle() instanceof InventoryHolder)
|
||||
{
|
||||
event.setCancelled(true);
|
||||
GriefPrevention.sendMessage(attacker, TextMode.Err, noContainersReason.get());
|
||||
Supplier<String> noContainersReason = claim.checkPermission(attacker, ClaimPermission.Build, event);
|
||||
if (noContainersReason != null)
|
||||
{
|
||||
GriefPrevention.sendMessage(attacker, TextMode.Err, noContainersReason.get());
|
||||
event.setCancelled(true);
|
||||
return;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
Supplier<String> noContainersReason = claim.checkPermission(attacker, ClaimPermission.Inventory, event, override);
|
||||
if (noContainersReason != null)
|
||||
{
|
||||
event.setCancelled(true);
|
||||
GriefPrevention.sendMessage(attacker, TextMode.Err, noContainersReason.get());
|
||||
}
|
||||
}
|
||||
|
||||
//cache claim for later
|
||||
if (playerData != null)
|
||||
{
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user