mirror of
https://github.com/TotalFreedomMC/TF-PlotSquared.git
synced 2024-12-23 00:15:06 +00:00
Fix players being able to place boats, armorstands etc using offhand
This commit is contained in:
parent
130e1b6300
commit
b999cb4195
1 changed files with 11 additions and 5 deletions
|
@ -1886,23 +1886,29 @@ import java.util.regex.Pattern;
|
|||
break;
|
||||
}
|
||||
ItemStack hand = player.getInventory().getItemInMainHand();
|
||||
ItemStack offHand = player.getInventory().getItemInOffHand();
|
||||
Material type = (hand == null) ? null : hand.getType();
|
||||
if (type == Material.AIR) {
|
||||
Material offType = (offHand == null) ? null : offHand.getType();
|
||||
if ((type == Material.AIR && offType != Material.AIR && !player.isSneaking()
|
||||
&& blockType.isInteractable()) || (type == Material.AIR
|
||||
&& offType == Material.AIR)) {
|
||||
eventType = PlayerBlockEventType.INTERACT_BLOCK;
|
||||
break;
|
||||
}
|
||||
if (!(type != null && type.equals(offType))) {
|
||||
type = offType;
|
||||
}
|
||||
if (type == null || type.isBlock()) {
|
||||
location = BukkitUtil
|
||||
.getLocation(block.getRelative(event.getBlockFace()).getLocation());
|
||||
eventType = PlayerBlockEventType.PLACE_BLOCK;
|
||||
break;
|
||||
}
|
||||
Material handType = hand.getType();
|
||||
lb = new BukkitLazyBlock(PlotBlock.get(handType.toString()));
|
||||
if (handType.toString().endsWith("egg")) {
|
||||
lb = new BukkitLazyBlock(PlotBlock.get(type.toString()));
|
||||
if (type.toString().endsWith("egg")) {
|
||||
eventType = PlayerBlockEventType.SPAWN_MOB;
|
||||
} else {
|
||||
switch (handType) {
|
||||
switch (type) {
|
||||
case FIREWORK_ROCKET:
|
||||
case FIREWORK_STAR:
|
||||
eventType = PlayerBlockEventType.SPAWN_MOB;
|
||||
|
|
Loading…
Reference in a new issue