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

Помогите [Решено] Как перемещать энтити (ProtocolLib)?

Тема в разделе "Разработка плагинов для новичков", создана пользователем EnderBro3D, 25 апр 2018.

Статус темы:
Закрыта.
  1. Автор темы
    EnderBro3D

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

    Баллы:
    76
    Имя в Minecraft:
    EnderBro3D
    У меня есть entityID, мне нужно переместить его в указанную точку (в моём случае переместить на голову игрока), я делаю так:

    Код:
        static void playerMove(Player player, Location to) {
            if(disguise.containsKey(player)) {
                buildMove(disguise.get(player), to).broadcastPacket();
            }
        }
    Код:
        private static AbstractPacket buildMove(int entityID, Location to) {
            WrapperPlayServerRelEntityMoveLook move = new WrapperPlayServerRelEntityMoveLook();
            move.setEntityID(entityID);
            move.setDx(to.getX());
            move.setDy(to.getY() + 1);
            move.setDz(to.getZ());
            move.setOnGround(true);
            move.setYaw(to.getYaw());
            move.setPitch(to.getPitch());
            return move;
        }
    Но энтити несётся куда-то в воздух, помогите пжлст.
     
  2. Автор темы
    EnderBro3D

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

    Баллы:
    76
    Имя в Minecraft:
    EnderBro3D
  3. bristol

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

    Баллы:
    46
    Ты хочешь игрока посадить на голову другого игрока?
     
  4. Автор темы
    EnderBro3D

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

    Баллы:
    76
    Имя в Minecraft:
    EnderBro3D
    Я хочу сделать так, чтобы энтити двигался также как и игрок, т.е энтити будет стоять в игроке, но на блок выше.
     
  5. Автор темы
    EnderBro3D

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

    Баллы:
    76
    Имя в Minecraft:
    EnderBro3D
    У меня получилось сделать это с телепортом:
    Код:
        private static AbstractPacket buildMove(int entityID, Location to) {
            WrapperPlayServerEntityTeleport teleport = new WrapperPlayServerEntityTeleport();
            teleport.setEntityID(entityID);
            teleport.setX(to.getX());
            teleport.setY(to.getY() + 1);
            teleport.setZ(to.getZ());
            teleport.setYaw(to.getYaw());
            teleport.setPitch(to.getPitch());
            teleport.setOnGround(false);
            return teleport;
        }

    upload_2018-5-2_2-52-30.png

    Тема закрыта)
     
Статус темы:
Закрыта.

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