Войти или зарегистрироваться
  • Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.

Узнать, с какой гранью блока взаимодействовал игрок, разрушив блок.

Статус
Закрыто для дальнейших ответов.

lolifrag

Активный участник
Пользователь
Баллы
66
Имя в Minecraft
meow
Допустим, существует некий блок в пустом пространстве. У него есть 6 граней - две горизонтальные и 4 вертикальные. Используя выранный инструмент, разрушаем блок. И мне нужно получить эту сторону/грань, с которой произошло взаимодействие.

Подскажите, каким методом можно получить эти грани?
 
Допустим, существует некий блок в пустом пространстве. У него есть 6 граней - две горизонтальные и 4 вертикальные. Используя выранный инструмент, разрушаем блок. И мне нужно получить эту сторону/грань, с которой произошло взаимодействие.

Подскажите, каким методом можно получить эти грани?
Я думаю, что только смотреть по кордам того, кто разрушал, и то это не 100% точность.
 
Я думаю, что только смотреть по кордам того, кто разрушал, и то это не 100% точность.
Можно как-то точно определить направление взгляда (курсора)?
Если да, то немного математики и можно было бы исходя из положения игрока, положения блока и направления взгляда получить.. наверное)
 
Можно как-то точно определить направление взгляда (курсора)?
Если да, то немного математики и можно было бы исходя из положения игрока, положения блока и направления взгляда получить.. наверное)
Проверяй его координаты относительно блока и yaw. Может получится
 
Стоя на одной позиции можно ломать блок с 2-х граней
@lolifrag, а зачем тебе вообще это надо?
Логическая цепочка такая:
  1. ломается блок - получаем грань, а если точнее, получаем два из трёх направлений, задающих вариант плоскости (XY или XZ или YZ)
  2. далее запоминаем вокруг неё 8 блоков в указанной плоскости
  3. проводим с ними указанные дополнительно действия
Проблема как раз в первом пункте

Вообще, можно плюнуть и использовать не 8 блоков плоскости, а 26 объёма. Но всё же хотелось бы именно первый вариант использовать..
 
Сама ссылка мне ничем не помогла, но на пару интересных мыслишек натолкнула. Прежде всего есть вопрос - сколько и чего равна длинна ребра блока (расстояние и еденица измерения)?
 
Сама ссылка мне ничем не помогла, но на пару интересных мыслишек натолкнула. Прежде всего есть вопрос - сколько и чего равна длинна ребра блока (расстояние и еденица измерения)?
Какие единицы измерения вы предполагаете увидеть? Сантиметры?
 
Какие единицы измерения вы предполагаете увидеть? Сантиметры?
Наверное я не правильно вопрос задал.
Появились пару хороших идеек, думаю над ними, если получится - сюда скину)
 
Java:
if (event.getBlockFace() == BlockFace.NORTH) player.sendMessage("Клик произошёл с северной стороны блока");
 
Статус
Закрыто для дальнейших ответов.

Поделиться этой страницей

Назад
Верх