1. Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.
    Скрыть объявление
Скрыть объявление
В преддверии глобального обновления, мы проводим исследования, которые помогут нам сделать опыт пользования форумом ещё удобнее. Помогите нам, примите участие!

Помогите Зафиксировать TextDisplay на одном блоке

Тема в разделе "Помощь", создана пользователем DverkaSK, 27 янв 2024.

Метки:
  1. Автор темы
    DverkaSK

    DverkaSK Участник

    Баллы:
    31
    Всем привет, добавляю к TextDisplay параметры через трансформацию, чтобы текст был повыше.

    Код:
    textDisplay.setTransformation(new Transformation(
                    new Vector3f(0f, 1f, 0f),
                    new AxisAngle4f(0f, 0f, 0f, 0f),
                    new Vector3f(1f, 1f, 1f),
                    new AxisAngle4f(0f, 0f, 0f, 0f)
            ));
    Но проблема в том, что если смотреть на текст сверху, то он начинает смещаться относительно того блока, где он был создан. На примере текста без трансформации с какой стороны не посмотреть, текст всегда будет на том блоке, где он создан. Как я могу сделать также, только для поднятого текста? Мне его обязательно надо поднять именно через трансформацию

    [​IMG]

    [​IMG]
     
  2. Dymeth

    Dymeth Активный участник Пользователь

    Баллы:
    98
    Имя в Minecraft:
    Dymeth
    Трансформация нужно только по оси Y, для Z и Z смещение необходимо установить в 0.

    И подобные вопросы лучше задавать в разделе "Разработка плагинов для новичков"
     
  3. Автор темы
    DverkaSK

    DverkaSK Участник

    Баллы:
    31
    Не понял. Z смещение у меня и так в нуле. Сам текст смещается только, если смотреть сверху, если смотреть на текст прямо, то он находится на своём месте.
    Суть в том, что чем больше ставишь значение Y в translation, тем текст при просмотре сверху смещается на большее расстояние. У меня вопрос, возможно ли просто текст выше сделать, при этом, чтобы он не уходил со своего места, если человек будет смотреть на него сверху.
    Код:
    textDisplay.setTransformation(new Transformation(
                    new Vector3f(0f, 1f, 0f), //translation
                    new AxisAngle4f(0f, 0f, 0f, 0f), //leftRotation
                    new Vector3f(1f, 1f, 1f), //scale
                    new AxisAngle4f(0f, 0f, 0f, 0f) //rightRotation
            ));
     
  4. Dymeth

    Dymeth Активный участник Пользователь

    Баллы:
    98
    Имя в Minecraft:
    Dymeth
    Да, действительно. В таком случае странно.
    Возможно кто-то другой подскажет.

    Пока других вариантов нет - можно поиграться с ванильной командой, чтобы подобрать необходимые значения.

    Ещё на вики в Data values есть несколько пояснений, правда касательно оффсетов подробной информации там не увидел. Но, может, ты найдешь подсказки: https://minecraft.wiki/w/Display
     

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