Require container trust to let pets sit down
This commit is contained in:
parent
3155c65320
commit
9fe7f8258d
|
|
@ -50,6 +50,7 @@ import org.bukkit.entity.Item;
|
||||||
import org.bukkit.entity.Llama;
|
import org.bukkit.entity.Llama;
|
||||||
import org.bukkit.entity.Mule;
|
import org.bukkit.entity.Mule;
|
||||||
import org.bukkit.entity.Player;
|
import org.bukkit.entity.Player;
|
||||||
|
import org.bukkit.entity.Sittable;
|
||||||
import org.bukkit.entity.Tameable;
|
import org.bukkit.entity.Tameable;
|
||||||
import org.bukkit.entity.Vehicle;
|
import org.bukkit.entity.Vehicle;
|
||||||
import org.bukkit.entity.Villager;
|
import org.bukkit.entity.Villager;
|
||||||
|
|
@ -532,6 +533,23 @@ class PlayerEventHandler implements Listener
|
||||||
{
|
{
|
||||||
this.onPlayerInteractEntity((PlayerInteractEntityEvent) event);
|
this.onPlayerInteractEntity((PlayerInteractEntityEvent) event);
|
||||||
}
|
}
|
||||||
|
Player player = event.getPlayer();
|
||||||
|
Entity entity = event.getRightClicked();
|
||||||
|
if (entity instanceof Sittable sittable)
|
||||||
|
{
|
||||||
|
PlayerData playerData = this.dataStore.getPlayerData(player.getUniqueId());
|
||||||
|
Claim claim = this.dataStore.getClaimAt(entity.getLocation(), false, playerData.lastClaim);
|
||||||
|
if (claim != null)
|
||||||
|
{
|
||||||
|
final Supplier<String> noContainersReason = claim.checkPermission(player, ClaimPermission.Inventory, event);
|
||||||
|
if (noContainersReason != null)
|
||||||
|
{
|
||||||
|
GriefPrevention.sendMessage(player, TextMode.Err, noContainersReason.get());
|
||||||
|
event.setCancelled(true);
|
||||||
|
sittable.setSitting(false);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
//when a player interacts with an entity...
|
//when a player interacts with an entity...
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user