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

Создание персонального ScoreBoard'a

Тема в разделе "Разработка плагинов для новичков", создана пользователем Minecraftov LoL, 9 фев 2014.

  1. Автор темы
    Minecraftov LoL

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

    Баллы:
    61
    Всем привет. Недавно появилась нужда создать свой плагин, а конкретно Табло статистики(ScoreBoard) и столкнулся с такой проблемой: Как каждому игроку задать персональный ScoreBoard, а не чтобы все игроки видели один ScoreBoard. Если кто знает, помогите пожалуйста^_^
     
  2. Хостинг MineCraft
    <
  3. ptnk

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

    Баллы:
    173
    Ну значит для каждого игрока нужно создать свой экземпляр SB, а не один на всех.
    Ваш К.О.
     
    ql_Nik_lp нравится это.
  4. Den_Abr

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

    Баллы:
    173
    Skype:
    Den_Abr
    Имя в Minecraft:
    Den_Abr
    player.setScoreboard(твой скореборд)
     
  5. Автор темы
    Minecraftov LoL

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

    Баллы:
    61
    Я так и сделал, но он присваивается всем игрокам и все получают один ScoreBoard, мне же не создавать 10000 ScoreBoard в коде, чтобы каждому свой присвоить, есть какой-нибудь альтернативный способ, например с помощью HashMap?
     
  6. ptnk

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

    Баллы:
    173
    Инициализируй каждый раз новый скорбоад и передавай.
     
  7. Автор темы
    Minecraftov LoL

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

    Баллы:
    61
    Например e.getPlayer().getScoreBoard(new ScoreBoard().getObjective("test")); ?
     
  8. ptnk

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

    Баллы:
    173
    начни изучать java вначале, а потом за плагины садись. ><
     
    Последнее редактирование: 9 фев 2014
    Den_Abr и Hephest нравится это.
  9. Автор темы
    Minecraftov LoL

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

    Баллы:
    61
    Cпасибо за помощь
     
  10. Автор темы
    Minecraftov LoL

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

    Баллы:
    61
    всмысли?
     
  11. Автор темы
    Minecraftov LoL

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

    Баллы:
    61
    Я также, создавая плагины - изучаю java[DOUBLEPOST=1391963806,1391963776][/DOUBLEPOST]
    А собственно как решить мою проблему не знаешь?[DOUBLEPOST=1391963884][/DOUBLEPOST]
    Я считаю что делая плагины, ты изучаешь все операторы и сложные массивы, что потом поможет в изучении Swing библиотеки и воопще GUI
     
  12. ptnk

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

    Баллы:
    173
    только потом, когда декомпилируешь плагины и смотришь код - плакать хочется.
    ООП? - А что такое ООП? Я не буду лишний код в лишний класс сувать.
    Паттерны? - А что это? Мне и без них свой огород городить не плохо.
    В итоге получаются крайне весёлые творения, с крайне неоптимальной реализацией, что добавляет кучу ненужной нагрузки к серверу.[DOUBLEPOST=1391964040,1391963955][/DOUBLEPOST]
    Не бывает сложны операторов и сложных массивов - бывают только пробелы в изучении.
     
  13. Автор темы
    Minecraftov LoL

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

    Баллы:
    61
    и что, что нагрузка на сервер? главное изучить и научиться использовать много мерные и одномерные массивы, if, switch, do while и т.д[DOUBLEPOST=1391964117,1391964044][/DOUBLEPOST]
    Я выражаюсь "языком новичков", под сложными массивами я подозреваю такие массивы как HashMap, ArrayList.[DOUBLEPOST=1391964161][/DOUBLEPOST]
    И воопще, "Знаток", не надо засорять тему ненужным флудом.
     
  14. ptnk

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

    Баллы:
    173
    Да прочитай ты уже хотя бы одну книгу по JAVA, эти "сложные массивы" называются коллекциями или контейнерами.
     
  15. Автор темы
    Minecraftov LoL

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

    Баллы:
    61
    Кто знает решение моей проблемы, убедительная просьба отписаться
     
  16. ptnk

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

    Баллы:
    173
    Конечно - а что нагрузка на сервер? Потом в будущем вырастают такие недотёпы и маленькие приложения отрмозят большие системы.
    Лучший опыт - это тот опыт, который ты получаешь сам. Т.е. для этого нужно стараться самому решить свои проблемы, самому напороться на граблю, самому найти описание той или иной функции.
    Обучение - это более самостоятельный процесс.
    А тут на форуме задаются простые вещи, ответы на которые можно получить самому.[DOUBLEPOST=1391964574][/DOUBLEPOST]
    А что знать твою проблемы?

    Берёшь всех игроков и для каждого такого игрока инициализиурешь новый SB.
    p1.setScoreBoard(new ScoreBoard());
    p2.setScoreBoard(new ScoreBoard());
    И каждый такой игрок будет иметь свою собственную SB.
     
  17. Автор темы
    Minecraftov LoL

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

    Баллы:
    61
    Берёшь всех игроков и для каждого такого игрока инициализиурешь новый SB.
    p1.setScoreBoard(new ScoreBoard());
    p2.setScoreBoard(new ScoreBoard());
    И каждый такой игрок будет иметь свою собственную SB.[/quote]
    Дак каждому ScoreBoard не надо Objective прикреплять?
     
  18. ptnk

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

    Баллы:
    173
    Дак каждому ScoreBoard не надо Objective прикреплять?[/quote]

    Конечно нужно.
     
  19. Автор темы
    Minecraftov LoL

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

    Баллы:
    61
    [DOUBLEPOST=1391964783,1391964729][/DOUBLEPOST]
    Конечно нужно.[/quote]
    Тоесть получается такой код: player.setScoreBoard(new ScoreBoard().getObjective("Test"));[DOUBLEPOST=1391964817][/DOUBLEPOST]ну, getObjective за скобку вынести[DOUBLEPOST=1391965160][/DOUBLEPOST]
    Конечно нужно.[/quote]
    Не получается твой способ, ошибку выдает
     
  20. ptnk

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

    Баллы:
    173
    Конечно выдаёт, я тебе показал псевдокод, а то, что ты написал - бред безумца.
     
  21. Автор темы
    Minecraftov LoL

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

    Баллы:
    61
    А с помощью HashMap вроде можно както? нет?
     

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