Хостинг серверов Minecraft playvds.com
  1. Вы находитесь в русском сообществе Bukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на русский язык плагины наших собратьев из других стран.
    Скрыть объявление

Gamemode 3 в листе игроков

Тема в разделе "Запросы на разработку плагинов", создана пользователем Valerra2, 5 дек 2016.

  1. Автор темы
    Valerra2

    Valerra2 Участник Пользователь

    Баллы:
    36
    Имя в Minecraft:
    Draherx
    Как можно изменить цвет игроков, находящиеся в режиме наблюдателя, которые помечаются там как серым цветом.Или изменить хотя бы на стандартный, белый цвет
     
  2. Хостинг MineCraft
    <
  3. IcedwinterZ

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

    Баллы:
    76
    Имя в Minecraft:
    IcedwinterZ
    Ты хочешь плагин? Или тебе решение в виде кода нужно?
     
  4. Автор темы
    Valerra2

    Valerra2 Участник Пользователь

    Баллы:
    36
    Имя в Minecraft:
    Draherx
    Вообще я бы не отказался от плагина, если не затруднит конечно
     
  5. ImNothing

    ImNothing Новичок

    Баллы:
    6
    Имя в Minecraft:
    ImNothing
    Это вообще возможно?

    Просто в табе изменить можно, но при переходе в гм 3 вроде нету метода изменять колор
     
  6. AtomicInteger

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

    Баллы:
    46
    Это возможно.
     
  7. ImNothing

    ImNothing Новичок

    Баллы:
    6
    Имя в Minecraft:
    ImNothing
    Тогда мне это тоже стало интересно
     
  8. Автор темы
    Valerra2

    Valerra2 Участник Пользователь

    Баллы:
    36
    Имя в Minecraft:
    Draherx
    Так всё же, насколько сложно это реализуемо?
    И да, можно ли сделать ещё так, чтобы к спектатором не могли телепортироваться?
    Для более анонимной слежки против прошаренных игроков.
     
  9. LuckyZeeRo

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

    Баллы:
    76
    Skype:
    luckyzeero
    Имя в Minecraft:
    LuckyZeeRo_
    Код:
    ProtocolLibrary.getProtocolManager().addPacketListener(new PacketAdapter(this, PacketType.Play.Server.PLAYER_INFO) {
                @Override
                public void onPacketSending(PacketEvent e) {
                    PacketPlayOutPlayerInfo packet = (PacketPlayOutPlayerInfo) e.getPacket().getHandle();
                    PacketPlayOutPlayerInfo.EnumPlayerInfoAction action = (PacketPlayOutPlayerInfo.EnumPlayerInfoAction) BukkitReflectionUtils.getDeclaredField(packet, "a");
                    if (action == PacketPlayOutPlayerInfo.EnumPlayerInfoAction.UPDATE_GAME_MODE) {
                        List<PacketPlayOutPlayerInfo.PlayerInfoData> infoList = (List<PacketPlayOutPlayerInfo.PlayerInfoData>) BukkitReflectionUtils.getDeclaredField(packet, "b");
                        for (PacketPlayOutPlayerInfo.PlayerInfoData infoData : infoList) {
                            if (infoData.c() == EnumGamemode.SPECTATOR) {
                                try {
                                    BukkitReflectionUtils.modifyFinalField(PacketPlayOutPlayerInfo.PlayerInfoData.class.getDeclaredField("c"), infoData, EnumGamemode.SURVIVAL);
                                } catch (NoSuchFieldException e1) {
                                    e1.printStackTrace();
                                }
                            }
                        }
                    }
                }
            });
    [DOUBLEPOST=1485012283,1485012232][/DOUBLEPOST]Нагуглил такое. Если писать плагин, подключать ProtocolLib. Даа, разрабы настолько глубоко засунули этот цвет...
     

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