thebooom
Активный участник
- Баллы
- 61
Привет. Столкнулся с проблемой. Хотел сделать простейшее отслеживание действий игрока, но что-то пошло не так. Я хотел: Если игрок нажмает "ЛКМ", то идет отправка в чат сообщения, простейшая рп-отыгровка стука. Буду рад помощи. Код приложу ниже.
UPD: Версия 1.15.2, возможно проблема в том, что начиная с версии 1.9+ у игрока 2 руки?
Код:
package things.main;
import org.bukkit.Bukkit;
import org.bukkit.ChatColor;
import org.bukkit.Material;
import org.bukkit.entity.Player;
import org.bukkit.event.Listener;
import org.bukkit.event.block.Action;
import org.bukkit.event.player.PlayerInteractEvent;
public class knock implements Listener{
//если лкм по двери, то рп оповещение
public void interact (PlayerInteractEvent e){
Action a = e.getAction();
if(a != Action.RIGHT_CLICK_BLOCK) return;
Player p = e.getPlayer();
if (p.getItemInHand().getType() == Material.AIR) {
if (e.getClickedBlock().getType() == Material.ACACIA_DOOR || e.getClickedBlock().getType() == Material.DARK_OAK_DOOR || e.getClickedBlock().getType() == Material.BIRCH_DOOR || e.getClickedBlock().getType() == Material.IRON_DOOR || e.getClickedBlock().getType() == Material.JUNGLE_DOOR || e.getClickedBlock().getType() == Material.OAK_DOOR) {
Bukkit.broadcastMessage(ChatColor.GRAY + "* " + p.getName() + " постучал в двери.");
}
}
}
}
UPD: Версия 1.15.2, возможно проблема в том, что начиная с версии 1.9+ у игрока 2 руки?