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

Помогите Проверка на премиум

Тема в разделе "Разработка плагинов для новичков", создана пользователем Larin, 6 май 2016.

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

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

    Баллы:
    103
    Как возможно проверить, премиум ли игрок?
    @Shevchik
     
  2. Хостинг MineCraft
    <
  3. CraftCoder

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

    Баллы:
    108
    Имя в Minecraft:
    CraftCoderr
    Он же уже писал, что никак.
     
  4. Shevchik

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

    Баллы:
    173
    Имя в Minecraft:
    _Shevchik_
    Игрок - никак, но можно проверить юзернейм искать по haspaid.jsp.

    Используйте поиск.
     
  5. Автор темы
    Larin

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

    Баллы:
    103
    Да jsp этот удалили. Не знаешь, может ли GameProfile.getId() возвращать null?(authlib)
    UPD: не может.
    Код:
    if(id == null && StringUtils.isBlank(name)) {
        throw new IllegalArgumentException("Name and ID cannot both be blank");
    
    UPD2: Он может быть null, видать что-то не продумали в mojang.
     
    Последнее редактирование: 6 май 2016
  6. Shevchik

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

    Баллы:
    173
    Имя в Minecraft:
    _Shevchik_
    Тогда просто пытаешь конвертить name -> uuid через MojangAPI, если такой чувак нашёлся - значит премиум акк на юзернейме есть.
     
  7. Автор темы
    Larin

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

    Баллы:
    103
    Ох, я даже конвертировать не пытаюсь, просто штатными средствами пробую авторизовать, не вышло - беру ID из базы/рандомный. И всё это ради скинов и пираток... Не знаете что-то готовое для 1.9.2? Еще вроде способ нашел подменить скин любому игроку на любой несуществующий.
     
  8. Shevchik

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

    Баллы:
    173
    Имя в Minecraft:
    _Shevchik_
    Для скинов есть SkinsRestorer. Авторизировать игрока можно только одним способом, послать ему EncryptionBegin пакет, и если игрок не зашёл с лицушного лаунчера, то он отсоединится.
     
  9. Автор темы
    Larin

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

    Баллы:
    103
    В смысле так:
    Игрок входит, на сервере дергается "hasJoined" в yggdrasil, а yggdrasil у меня подменён моим классом, в котором hasJoined переопределён, если есть ID, то пытаюсь получить GameProfile полученный через оригинальный метод, если не выходит - отправляю свой GameProfile.

    Блин, не заметил то, что там ID получается в методе по-умолчанию, надо спать идти уже...
     
  10. Reality_SC

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

    Баллы:
    123
    Имя в Minecraft:
    Reality_SC
    Очень странно, не могу ответить то, что хочу
     
  11. Автор темы
    Larin

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

    Баллы:
    103
    Напиши в лс тогда.
     

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