Помогите Как подсветить игрока игроку и потом отменить это

protocolLib -> WrappedDataWatcher.

Код:
public void setGlowing(Player p, Player sendPacket) {
    
        PacketContainer packet = plugin.getProtocolManager().createPacket(PacketType.Play.Server.ENTITY_METADATA);
        packet.getIntegers().write(0, p.getEntityId());
        WrappedDataWatcher watcher = new WrappedDataWatcher();
        Serializer serializer = Registry.get(Byte.class);
        watcher.setEntity(p);
        watcher.setObject(0, serializer, (byte) (0x40));
        packet.getWatchableCollectionModifier().write(0, watcher.getWatchableObjects());

        try {
            plugin.getProtocolManager().sendServerPacket(sendPacket, packet);
        } catch (InvocationTargetException e) {
            getLogger().info("Игрок не загорелся.");
        }
         
    }
Сломаешь таким образом другие характеристики игрока, да и потом мета сбросится на реальную в ближайшее время.
Не всё так просто
 
Сломаешь таким образом другие характеристики игрока, да и потом мета сбросится на реальную в ближайшее время.
Не всё так просто
С чем-то и соглашусь, но я думаю человеку нужно подсветить игрока не навсегда.
 
С чем-то и соглашусь, но я думаю человеку нужно подсветить игрока не навсегда.
Нужно подсветить на контролируемое время.

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

Поэтому и не всё так просто.
Выше я писал, как этого избежать
 
Назад
Верх