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

В разработке OfflinePlayerUtils

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

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

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

    Баллы:
    173
    Имя в Minecraft:
    _Shevchik_
    Сейчас разрабатываю плагин-API который позволит взаимодействовать с инвентарём, а также местоположением и другими данными игрока оффлайн.
    https://github.com/Shevchik/OfflinePlayerUtils
    Принимаю ваши предложения по API.
     
    Последнее редактирование: 19 фев 2015
  2. Хостинг MineCraft
    <
  3. ensirius

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

    Баллы:
    123
  4. Автор темы
    Shevchik

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

    Баллы:
    173
    Имя в Minecraft:
    _Shevchik_
    Телепортация оффлайн игрока уже реализована, частично...
    Баккит хранит UUID в качестве идентефикатора мира, а значит чтобы узнать имя мира придётся пробежаться по всем мирам и вытащить оттуда имя мира, при этом надо учесть что у mcpc+ свой способ хранения миров.
    А ещё надо накатать кучу кода для поддержки 1.6.4
     
  5. ensirius

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

    Баллы:
    123
    Еще кстати нет никакого смысла в регистрации этой библиотеки как плагина.
     
  6. Автор темы
    Shevchik

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

    Баллы:
    173
    Имя в Minecraft:
    _Shevchik_
    У меня от этой либы будут зависеть сразу несколько плагинов, поэтому я предпочту зарегать её как плагин, чтобы потом не импортить в каждый лишний раз.
    А кому надо вполне выдернут сырцы и заюзают как библиотеку.[DOUBLEPOST=1396992476,1396989523][/DOUBLEPOST]Таки добился того чтобы UUID мира резолвился в имя, правда обратный конвертер (имя->uuid) решил не делать, ну его к чёрту.[DOUBLEPOST=1396995317][/DOUBLEPOST]Сделал совместимость со всеми версиями с которыми я хотел, теперь оталось только добавить изменение гейммода. Также добавить yaw и pitch в locationinfo.
     
  7. BeYkeR

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

    Баллы:
    173
    Установка жизни , уровень и сытость.
     
  8. Sirse

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

    Баллы:
    173
    Имя в Minecraft:
    Sirse
    Проверка пермов для оффлайновых игроков
     
  9. Автор темы
    Shevchik

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

    Баллы:
    173
    Имя в Minecraft:
    _Shevchik_
    Это вообще не к этому плагину, это надо к разработчикам пермишен плагинов и баккита обращаться.
     
  10. dark32

    dark32 А где твой ТЗ? Пользователь

    Баллы:
    123
    Имя в Minecraft:
    dark32
    Интересно, буду следить и топтать.
    Надеюсь рефракторнг проводится.

    Что должно быть обязательно:
    1. телепортация как в пределах мира, так и между
    2. установка здоровья/голода
    3. установка опыты
    4. снятие эффектов
    Что хотелось бы видеть
    1. работа с инвентарём
    2. установка эффектов
    3. удаление/обнуление игрока (иногда надо, когда битые вещи в инвентарь попадают)
    4. копирование из игрока, копирование в игрока (т.е. одеть шкуру игрока, поправить что-то, и перенести в игрока всё это)

    А разве у PEX нельзя пермы проверить по имени игрока? Вроде тут всё равно имя или просто строка подаётся, если PermissionUser существует, то он будет возвращён.
    Код:
    public static PermissionUser getUser(String name) {
      return getPermissionManager().getUser(name);
      }
     
  11. Sirse

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

    Баллы:
    173
    Имя в Minecraft:
    Sirse
    Я не пользуюсь PEX, мне больше нравиться GroupManager, но суть не в этом.
    Стандартный баккитовский метод hasPermission возвращает false, если игрок не на сервере. Хотя сейчас появилось подозрение что я словил в своё время какой-то баг, судя по JavaDoc's
     
  12. Автор темы
    Shevchik

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

    Баллы:
    173
    Имя в Minecraft:
    _Shevchik_
    Это не баг.
    Стандартный баккитовский метод всегда будет возврашать false для оффлайн игрока.
    Причина этого явления в том что собственно пермишен плагины могут аттачить пермишены к игроку только он онлайн (собственно плагины могут аттачить пермишены которые как раз этот метод и проверяет только к классу Player)[DOUBLEPOST=1397053848,1397037332][/DOUBLEPOST]Переименовал плагин в OfflinePlayerUtils[DOUBLEPOST=1404644077][/DOUBLEPOST]Добавил поддержку 1.7.9.
    Теперь перед редактированием данных требуется начать сессию редактирования, и не забыть её закончить после окончания редактирования данных. Пока сессия активн игрок не сможет зайти на сервер.[DOUBLEPOST=1404645217][/DOUBLEPOST]Добавил возможность получать и менять GameMode[DOUBLEPOST=1424298839][/DOUBLEPOST]Ап со дна
     
    Последнее редактирование: 9 апр 2014
  13. ql_Nik_lp

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

    Баллы:
    173
    Skype:
    q-nik-p
    Имя в Minecraft:
    ql_Nik_lp
    А может таки запечатать либу в 1 здоровенный класс?
    Мне кажется удобнее будет o.o
     
  14. Автор темы
    Shevchik

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

    Баллы:
    173
    Имя в Minecraft:
    _Shevchik_
    Запечатать это в 1 класс это адовая хрень выйдет.
     
  15. Reality_SC

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

    Баллы:
    123
    Имя в Minecraft:
    Reality_SC
    Заметка к коммиту "Use my own NBT read implementation..."
    Я однажды использовал эту штуку: https://github.com/Evil-Co/NBT-Lib, мне показалось удачным решением.
     
  16. Автор темы
    Shevchik

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

    Баллы:
    173
    Имя в Minecraft:
    _Shevchik_
    Я взял для примера несколько либ и написал свою потому что некоторые моменты тех либ мн не нравятся. Впрочем и своей либе тоже пару косякой есть.
     
  17. ql_Nik_lp

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

    Баллы:
    173
    Skype:
    q-nik-p
    Имя в Minecraft:
    ql_Nik_lp
    Все зависит от того как сделаешь)
     
  18. Korvinius

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

    Баллы:
    88
    Можно добавить обработку некоторых функций плагина Essentials?
    Например:
    1. Полет (вкл/выкл)
    2. Режим бога (вкл/выкл)
    3. Работа с точками дома, получение координат, удаление.
     
  19. Автор темы
    Shevchik

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

    Баллы:
    173
    Имя в Minecraft:
    _Shevchik_
    Нет. Для этого есть API самого essentials, его и используйте.
     

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