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

Идея Custom Scoreboard

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

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

    Den_Abr Старожил Девелопер Пользователь

    Баллы:
    173
    Skype:
    Den_Abr
    Имя в Minecraft:
    Den_Abr
    Собственно, предлагаю сделать костыль, который отправлял бы игроку индивидуальный scoreboard(как правильно по русски?). Сам я сделать не могу, ибо с пакетами не дружу, так что надеюсь на разработчиков умнее.
     
  2. Автор темы
    Den_Abr

    Den_Abr Старожил Девелопер Пользователь

    Баллы:
    173
    Skype:
    Den_Abr
    Имя в Minecraft:
    Den_Abr
    I-Am-Black-Overlord и RVXman нравится это.
  3. Jampire

    Jampire Старожил Пользователь

    Баллы:
    173
    Skype:
    jampire-h
    Имя в Minecraft:
    Jampire
    В ячейках останется видным пинг, а это немного так убого. Считаю идею бредом)
     
    flop[YKT] нравится это.
  4. Автор темы
    Den_Abr

    Den_Abr Старожил Девелопер Пользователь

    Баллы:
    173
    Skype:
    Den_Abr
    Имя в Minecraft:
    Den_Abr
    Причём тут таблист вообще? Я говорю о скореборде, который торчит справа у игрока
     
  5. Jampire

    Jampire Старожил Пользователь

    Баллы:
    173
    Skype:
    jampire-h
    Имя в Minecraft:
    Jampire
    Перепутал, извиняюсь... И все-же не догоняю что за scoreboard :\
     
  6. Автор темы
    Den_Abr

    Den_Abr Старожил Девелопер Пользователь

    Баллы:
    173
    Skype:
    Den_Abr
    Имя в Minecraft:
    Den_Abr
  7. Jampire

    Jampire Старожил Пользователь

    Баллы:
    173
    Skype:
    jampire-h
    Имя в Minecraft:
    Jampire
    Vedroyder и Attelis нравится это.
  8. Автор темы
    Den_Abr

    Den_Abr Старожил Девелопер Пользователь

    Баллы:
    173
    Skype:
    Den_Abr
    Имя в Minecraft:
    Den_Abr
    Чувак, это Minecraft 1.5.
     
  9. Ission

    Ission Старожил Девелопер Пользователь

    Баллы:
    173
    Skype:
    lokivava
    Я не понимаю, что от меня хотят? :'(
     
  10. Автор темы
    Den_Abr

    Den_Abr Старожил Девелопер Пользователь

    Баллы:
    173
    Skype:
    Den_Abr
    Имя в Minecraft:
    Den_Abr
    Чтобы игроку в скореборде отображалась индивидуальная информация, т.е. каждый видел своё
     
    ВремяПриключений нравится это.
  11. Jampire

    Jampire Старожил Пользователь

    Баллы:
    173
    Skype:
    jampire-h
    Имя в Minecraft:
    Jampire
    Появились огромные планы на эту фичу, буду ковырять :)
     
  12. Jampire

    Jampire Старожил Пользователь

    Баллы:
    173
    Skype:
    jampire-h
    Имя в Minecraft:
    Jampire
    http://forums.bukkit.org/threads/1-5-1-custom-scoreboards.135210/
    тут уже экспериментировали с пакетами, большая часть работы есть)

    upd.
    Насколько я понял - записать туда что-то минуя цифры не получится.
    Если не прислан Score - клиент всовывает на его место 0
     
  13. Автор темы
    Den_Abr

    Den_Abr Старожил Девелопер Пользователь

    Баллы:
    173
    Skype:
    Den_Abr
    Имя в Minecraft:
    Den_Abr
    Мне цифры понадобятся.
    А может кто соберёт из этого плагин-API?
     
    MineMan910 и slavik123123123 нравится это.
  14. Jampire

    Jampire Старожил Пользователь

    Баллы:
    173
    Skype:
    jampire-h
    Имя в Minecraft:
    Jampire
    Команда которая изначально доступна в игре делает всё необходимое, стоит ли делать апи?
    Правда она меняет таблицу рекордов на сервере для всех, а пакетами можно сделать ее отдельной для каждого игрока, но она будет пропадать при релоге - поэтому что-бы игроку ее отправить повторно ее нужно где-то хранить)

    Всё вышесказанное тестил сейчас)

    Код:
        public void test(final Player player) {
            Bukkit.getScheduler().runTask(Main.plugin, new Runnable() {
                @Override
                public void run() {
                    String name = "Test";
     
                    Scoreboard sb = new Scoreboard();
                    sb.registerObjective(name, new ScoreboardBaseCriteria(name));
                    Packet206SetScoreboardObjective packet = new Packet206SetScoreboardObjective(sb.getObjective(name), 0);
                    Packet208SetScoreboardDisplayObjective display = new Packet208SetScoreboardDisplayObjective(1, sb.getObjective(name));
                    sendPacket(player, packet);
                    sendPacket(player, display);
                    ScoreboardScore scoreItem1 = sb.getPlayerScoreForObjective("Answer to life", sb.getObjective(name));
                    ScoreboardScore scoreItem2 = sb.getPlayerScoreForObjective("4 * 4", sb.getObjective(name));
                    ScoreboardScore scoreItem3 = sb.getPlayerScoreForObjective("4 * 42", sb.getObjective(name));
                    ScoreboardScore scoreItem4 = sb.getPlayerScoreForObjective("4 * 43", sb.getObjective(name));
                    ScoreboardScore scoreItem5 = sb.getPlayerScoreForObjective("4 * 44", sb.getObjective(name));
                    ScoreboardScore scoreItem6 = sb.getPlayerScoreForObjective("4 * 45", sb.getObjective(name));
                    ScoreboardScore scoreItem7 = sb.getPlayerScoreForObjective("4 * 46", sb.getObjective(name));
                    scoreItem1.setScore(42);
                    scoreItem2.setScore(12);
                    Packet207SetScoreboardScore pScoreItem1 = new Packet207SetScoreboardScore(scoreItem1, 0);
                    Packet207SetScoreboardScore pScoreItem2 = new Packet207SetScoreboardScore(scoreItem2, 0);
                    Packet207SetScoreboardScore pScoreItem3 = new Packet207SetScoreboardScore(scoreItem3, 0);
                    Packet207SetScoreboardScore pScoreItem4 = new Packet207SetScoreboardScore(scoreItem4, 0);
                    Packet207SetScoreboardScore pScoreItem5 = new Packet207SetScoreboardScore(scoreItem5, 0);
                    Packet207SetScoreboardScore pScoreItem6 = new Packet207SetScoreboardScore(scoreItem6, 0);
                    Packet207SetScoreboardScore pScoreItem7 = new Packet207SetScoreboardScore(scoreItem7, 0);
                    sendPacket(player, pScoreItem1);
                    sendPacket(player, pScoreItem2);
                    sendPacket(player, pScoreItem3);
                    sendPacket(player, pScoreItem4);
                    sendPacket(player, pScoreItem5);
                    sendPacket(player, pScoreItem6);
                    sendPacket(player, pScoreItem7);
                }
     
            });
        }
     
        public static void sendPacket(Player player, Packet packet) {
            ((CraftPlayer) player).getHandle().playerConnection.sendPacket(packet);
        }
    позаимствовал ихний код и увеличил)
     
  15. Автор темы
    Den_Abr

    Den_Abr Старожил Девелопер Пользователь

    Баллы:
    173
    Skype:
    Den_Abr
    Имя в Minecraft:
    Den_Abr
    Так вот мне это не надо, так как там показывается одна и та же информация.
    Это уже другой вопрос
    Мне охота такой апи, чтобы информацию игроку отправлять таким методом: sendInfo(player, "У тебя жизней", 1);
     
  16. Автор темы
    Den_Abr

    Den_Abr Старожил Девелопер Пользователь

    Баллы:
    173
    Skype:
    Den_Abr
    Имя в Minecraft:
    Den_Abr
    Хотя, я уже итак разобрался, без апи. Вон что наквасил
    @Jampire, может, ты ещё домыслил, как её убрать?
     

    Вложения:

  17. Jampire

    Jampire Старожил Пользователь

    Баллы:
    173
    Skype:
    jampire-h
    Имя в Minecraft:
    Jampire
    Не думал как убирать)
     
  18. Автор темы
    Den_Abr

    Den_Abr Старожил Девелопер Пользователь

    Баллы:
    173
    Skype:
    Den_Abr
    Имя в Minecraft:
    Den_Abr
    А то при повторной отправке клиент ложится
     
  19. Jampire

    Jampire Старожил Пользователь

    Баллы:
    173
    Skype:
    jampire-h
    Имя в Minecraft:
    Jampire
    тоже заметил) можно попробовать удалить и создать снова с новыми характеристиками.
     
  20. Автор темы
    Den_Abr

    Den_Abr Старожил Девелопер Пользователь

    Баллы:
    173
    Skype:
    Den_Abr
    Имя в Minecraft:
    Den_Abr
    Так вот как удалить?
     

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