- Баллы
- 31
- Имя в Minecraft
- Copter533
Как отменять разрушения блоков, которые не находятся в списке поставленных (список координат)? Ивент BlockExplodeEvent не отслеживается у меня при взрыве тнт, никаких посторонних плагинов нет. Paper 1.12.2
Следуйте инструкциям в видео ниже, чтобы узнать, как установить наш сайт как веб-приложение на главный экран вашего устройства.
Примечание: Эта функция может быть недоступна в некоторых браузерах.
Ивент не отслеживается совсем или не отслеживаются твои условия в ивенте? Там вроде в event.blockList() нужно добавлять те блоки, которые ты хочешь сохранить после взрываКак отменять разрушения блоков, которые не находятся в списке поставленных (список координат)? Ивент BlockExplodeEvent не отслеживается у меня при взрыве тнт, никаких посторонних плагинов нет. Paper 1.12.2
После поджигания динамит становится сущностью, так что совет верный - используй EntityExplodeEvent. BlockExplodeEvent срабатывает при взрыве таких блоков, как кровати в незере/энде.Это вроде событие взрыва крипера
Ну, хорошо, я получил список блоков, прошёл по списку и понял какие нужно оставить, а какие нет, как мне отменить их уничтожение?Ивент не отслеживается совсем или не отслеживаются твои условия в ивенте? Там вроде в event.blockList() нужно добавлять те блоки, которые ты хочешь сохранить после взрыва
Ну, хорошо, я получил список блоков, прошёл по списку и понял какие нужно оставить, а какие нет, как мне отменить их уничтожение?
Iterator<Block> blockIterator = event.blockList();
while (blockIterator.hasNext()) {
Block block = blockIterator.next();
if (если block нужно сохранить) {
blockIterator.remove();
}
}
Спасибо, но я сделал через event.blockList().removeIf(x -> УСЛОВИЕ);PHP:Iterator<Block> blockIterator = event.blockList(); while (blockIterator.hasNext()) { Block block = blockIterator.next(); if (если block нужно сохранить) { blockIterator.remove(); } }