- Баллы
- 1
Необходимо проверить, есть-ли где-то в мире блок (допустим: светокамень).
Нужно сделать проверку через if...
Нужно сделать проверку через if...
Следуйте инструкциям в видео ниже, чтобы узнать, как установить наш сайт как веб-приложение на главный экран вашего устройства.
Примечание: Эта функция может быть недоступна в некоторых браузерах.
Block block = Bukkit.getWorld("world").getBlockAt(x, y, z);Необходимо проверить, есть-ли где-то в мире блок (допустим: светокамень).
Нужно сделать проверку через if...
x, y, z - красные (Cannot resolve symbol). Что можно в эти переменные добавить?Block block = Bukkit.getWorld("world").getBlockAt(x, y, z);
if (block.getType() == Material.GLOWSTONE) {
//Что то делать
}
Координаты блокаx, y, z - красные (Cannot resolve symbol). Что можно в эти переменные добавить?
Ну это понятно, но у меня нет определенных координат. Т.е нужно проверить наличие блока не на координатах, а во всем миреКоординаты блока
Проверить наличие блока в параллелепипеде от x1, y1, z1 до x2, y2, z2Ну это понятно, но у меня нет определенных координат. Т.е нужно проверить наличие блока не на координатах, а во всем мире
for (int x = x1; x <= x2; x++)
for (int y = y1;y<=y2;y++)
for (int z=z1;z<=z2;z++) {
//сюда код мурлика
}
Как я понял, предлагается проверять опять-таки определенный кусок мира (определенный координаты). Однако, я не знаю, где именно в мире будет поставлен блокПроверить наличие блока в параллелепипеде от x1, y1, z1 до x2, y2, z2
Код:for (int x = x1; x <= x2; x++) for (int y = y1;y<=y2;y++) for (int z=z1;z<=z2;z++) { //сюда код мурлика }
и проверяй нужный тебе кусок мира
BlockPlaceEventКак я понял, предлагается проверять опять-таки определенный кусок мира (определенный координаты). Однако, я не знаю, где именно в мире будет поставлен блок
Ну, тогда придётся проверять ВЕСЬ мир, т.е. 60кк*60кк*(не помню, сколько теперь высота, раньше была 256)Как я понял, предлагается проверять опять-таки определенный кусок мира (определенный координаты). Однако, я не знаю, где именно в мире будет поставлен блок
У меня есть метод замены блоков в радиусе, он продолжается до определенного радиуса и вызывается при установке определенного блока. Я хочу туда добавить остановку замены блоков, если блока (который вызвал ивент) в мире уже не будет (т.е блок поставили - замена начала происходить... Блок убрали - замена остановилась, а не шла дальше). Надеюсь, вы меня поняли xdНу, тогда придётся проверять ВЕСЬ мир, т.е. 60кк*60кк*(не помню, сколько теперь высота, раньше была 256)
Вряд ли тебе надо весь мир, поэтому опиши, что ты хочешь подробнее
1) слушаешь ивент, который тебе скинул александраге. Смотришь тип блока, если то, что надо - п.2У меня есть метод замены блоков в радиусе, он продолжается до определенного радиуса и вызывается при установке определенного блока. Я хочу туда добавить остановку замены блоков, если блока (который вызвал ивент) в мире не будет. Надеюсь, вы меня поняли xd
BlockPlaceEvent и BlockBreakEventУ меня есть метод замены блоков в радиусе, он продолжается до определенного радиуса и вызывается при установке определенного блока. Я хочу туда добавить остановку замены блоков, если блока (который вызвал ивент) в мире уже не будет (т.е блок поставили - замена начала происходить... Блок убрали - замена остановилась, а не шла дальше). Надеюсь, вы меня поняли xd
А BlockBreakEvent будет работать, если блок (который имеет физику) будет падать на факел? Например, если это блок песка
EntityChangeBlockEvent может отслеживать падающие блоки.А BlockBreakEvent будет работать, если блок (который имеет физику) будет падать на факел? Например, если это блок песка