Следуйте инструкциям в видео ниже, чтобы узнать, как установить наш сайт как веб-приложение на главный экран вашего устройства.
Примечание: Эта функция может быть недоступна в некоторых браузерах.
Есть ItemSpawnEvent я хочу внутри него поместить BlockBreakEvent, как это можно реализовать?Что вы имеете в виду?
конкретно, что значит поместить?Есть ItemSpawnEvent я хочу внутри него поместить BlockBreakEvent, как это можно реализовать?
Есть определенный список блоков при разрушении которого не падает дроп. Вот я и хочу через ItemSpawnEvent отменить дроп определенных блоков.Все ещё не понял вас. Приведите пример ситуации, в которой это может понадобиться.
Тогда почему вы не используете getBlock().getDrops().clear() в BlockBreakEvent?Есть определенный список блоков при разрушении которого не падает дроп. Вот я и хочу через ItemSpawnEvent отменить дроп определенных блоков.
Не выходит, дроп всё равно появляетсяТогда почему вы не используете getBlock().getDrops().clear() в BlockBreakEvent?
@EventHandler
public void onBlockBreak(BlockBreakEvent e){
final Player player = e.getPlayer();
if(player.getWorld().getName().equalsIgnoreCase("Laputa")){
if(e.getBlock().getType() == Material.EMERALD_ORE){
e.getBlock().getDrops().clear();
}
}
}
сохрани дроп и проверь в дроп эвенте сохраненное. если найдется совпадение - удали.Не выходит, дроп всё равно появляется
Java:@EventHandler public void onBlockBreak(BlockBreakEvent e){ final Player player = e.getPlayer(); if(player.getWorld().getName().equalsIgnoreCase("Laputa")){ if(e.getBlock().getType() == Material.EMERALD_ORE){ e.getBlock().getDrops().clear(); } } }
Может я чего то не понимаю, но способ очистки инвентаря в блоке тоже работает (стоит на сервере и без проблем чистит блоки из тинкерса).сохрани дроп и проверь в дроп эвенте сохраненное. если найдется совпадение - удали.
e.getBlock().getDrops().clear(); действительно работает не во всех случаях
Верстаки что ли?Может я чего то не понимаю, но способ очистки инвентаря в блоке тоже работает (стоит на сервере и без проблем чистит блоки из тинкерса).
АгаВерстаки что ли?
Если отменять BlockBreakEvent и ломать, например, верстак, то из него выпадут вещи из которых ты крафтил.Не знаю, всегда делал это отменяя евент а затем выбрасывая что надо самому...
Только вот инвентарь блока в этом спмске отсутствует...Если отменять BlockBreakEvent и ломать, например, верстак, то из него выпадут вещи из которых ты крафтил.
Дроп самого блока легче отменить через getBlock().getDrops().clear() и добавлять через add(ItemStack)