Случайная телепортация

Версия Minecraft
1.12.2
API
Forge
198
1
24
Есть блок, при активации он проверяет 5 соседних блоков и свой инвентарь. Если там всё, как нужно, то игрок, активировавший этот блок, должен быть случайно телепортирован в пределах того же измерения. Как можно это сделать?
 
Решение
Выбрать случайныей x,z координаты таким образом:
Java:
int x = world.rand.nextInt(radius*2)-radius
Потом получить y координату верхнего блока
Java:
BlockPos validPos = world.getTopSolidOrLiquidBlock(new BlockPos(x,0,z))
И после телепортировать игрока туда.
Пример телепортации можешь посмотреть в Ender'sMagic
7,099
324
1,510
Выбрать случайныей x,z координаты таким образом:
Java:
int x = world.rand.nextInt(radius*2)-radius
Потом получить y координату верхнего блока
Java:
BlockPos validPos = world.getTopSolidOrLiquidBlock(new BlockPos(x,0,z))
И после телепортировать игрока туда.
Пример телепортации можешь посмотреть в Ender'sMagic
 
Сверху