Следуйте инструкциям в видео ниже, чтобы узнать, как установить наш сайт как веб-приложение на главный экран вашего устройства.
Примечание: Эта функция может быть недоступна в некоторых браузерах.
А он и не кидает такого эвента. Делай через PlayerInteractEventОблазил все API в Essentials но не нашел где брать собитие, когда игрок использует табличку(например [Buy] табличку). Можно ли это как-то добыть из Essentials?
Я делал, но при отмене эвента он не отменяется(с любой табличкой отменяется кроме табличек из Essentials)А он и не кидает такого эвента. Делай через PlayerInteractEvent
Попробуй повысить приоритет листенераЯ делал, но при отмене эвента он не отменяется(с любой табличкой отменяется кроме табличек из Essentials)
Я даже заметил что если запретить через MachineGuard взаимодействовать с табличкой, всеранво Essentials таблички работают, хотя пишет что вам нельзя в этом регионе взаимодействовать с этим. Мне это нужно чтоб игрок немог юзать эти таблички при определенных условиях(но в остальных случаях чтоб можно было это делать)
@EventHandler(priority = EventPriority.HIGHEST)
public void sign(PlayerInteractEvent e){
Player p = e.getPlayer();
Block b = e.getClickedBlock();
if(p.getGameMode() == GameMode.CREATIVE){
if ((b.getType() == Material.SIGN_POST) || (b.getType() == Material.WALL_SIGN)) {
e.setCancelled(true);
p.sendMessage("test");
}
}
}
100% вариант через пакетывот к примеру возьмем вот такой кусок кода:
Код:@EventHandler(priority = EventPriority.HIGHEST) public void sign(PlayerInteractEvent e){ Player p = e.getPlayer(); Block b = e.getClickedBlock(); if(p.getGameMode() == GameMode.CREATIVE){ if ((b.getType() == Material.SIGN_POST) || (b.getType() == Material.WALL_SIGN)) { e.setCancelled(true); p.sendMessage("test"); } } }
Сообщение test приходит, но эвент, когда юзаю табличку с любой Essentials командой не отменяется всеравно