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

[DEV] Фреймворк для команд.

Тема в разделе "Неподтвержденные плагины", создана пользователем CatCoder, 13 ноя 2016.

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

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

    Баллы:
    76
    Имя в Minecraft:
    CatCoder
    CommandFramework - простой фреймворк для команд
    Версия: 1.0
    Здравствуйте, уважаемые форумчане! Давненько на этом сайте не появлялись разные фреймворки. Так вот, я создал максимально компактный фреймворк для создания нескольких команд и их обрабатывания.

    В самом фреймворке есть пример его использования. Сама структура команд построена на аннотациях (me.catcoder.cframework.Command).

    Как мне использовать его?
    Всё достаточно просто. Разжую всё пошагово.
    1. Создание объекта класса CommandCenter:
    Код:
    CommandCenter center = new CommandCenter(myplugin);
    2. Регистрация команд:
    Код:
    center.register(MyClassInstance); //регистрация команд
    Более подробный туториал есть на гитхабе. (см. ниже)

    * GitHub (собственно, оттуда Вы можете его скачать)

    Ну что же, на этом всё. Если вы нашли какой-нибудь недочёт или у Вас есть предложения для улучшения фреймворка - смело стучитесь в личку (сюды). Спасибо за внимание! :)
     
  2. _MediaNik_

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

    Баллы:
    76
    Skype:
    Medianik5
    Имя в Minecraft:
    _MediaNik_
    А в чем собсна смысл?
     
  3. Автор темы
    CatCoder

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

    Баллы:
    76
    Имя в Minecraft:
    CatCoder
    Такую логику используют почти все адекватные плагины. И ты вообще код смотрел?
     
  4. Автор темы
    CatCoder

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

    Баллы:
    76
    Имя в Minecraft:
    CatCoder
    Тихо. Собственно, смысл фреймворка - создание нескольких команд в одном классе, также их можно не регистрировать в plugin.yml. И ещё он автоматически удаляет конфликтующие команды.
     
  5. xDark

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

    Баллы:
    96
    как в ессентиалсе
     
  6. Автор темы
    CatCoder

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

    Баллы:
    76
    Имя в Minecraft:
    CatCoder
    Ладно, тебя его использовать я не заставляю. Не нравится - не используй.
     
  7. xDark

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

    Баллы:
    96
    Ну типо вместо букит команды /ban команда ессунтиалса
     
  8. xDark

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

    Баллы:
    96
    Раньше этого не быть
     
  9. 0x1EE7C0DE

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

    Баллы:
    36
    На гитхабе тот же тутор, только на английском.
     
  10. Автор темы
    CatCoder

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

    Баллы:
    76
    Имя в Minecraft:
    CatCoder
    Хз, решил сделать универсально. :D
    Ты от меня отстанешь или нет?
     
  11. Автор темы
    CatCoder

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

    Баллы:
    76
    Имя в Minecraft:
    CatCoder
    Лучше и не надо. Пожалуйста, пощади.
     
  12. _MediaNik_

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

    Баллы:
    76
    Skype:
    Medianik5
    Имя в Minecraft:
    _MediaNik_
    Нет. Вроде как, просто minecraft:ban попробуй
     
  13. DonDays

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

    Баллы:
    96
    Имя в Minecraft:
    DonDays
    Она и так перезапишется, на сколько я знаю
     
  14. Автор темы
    CatCoder

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

    Баллы:
    76
    Имя в Minecraft:
    CatCoder
    Фреймворк убирает полностью конфликтующую команду, т.е удаляет её из мапы команд.
     
  15. Автор темы
    CatCoder

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

    Баллы:
    76
    Имя в Minecraft:
    CatCoder
    А смысл тогда делать команду на подобие майновской, если ты её хочешь оставить?
     
  16. fromgate

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

    Баллы:
    173
    Имя в Minecraft:
    fromgate
    Удалять команду совсем ни к чему. Мысли у кодеров бывают сходятся. И если кому-то нужно два плагина с одинаковой командой, то удаление - это не лучшая идея. Ты фактически ломаешь другой плагин, который человек зачем-то устанавливал.
     
  17. Автор темы
    CatCoder

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

    Баллы:
    76
    Имя в Minecraft:
    CatCoder
    Ну если он не хочет убирать команды, то единственное решение - сделать другую, иначе никак. В фреймворке есть функция, если сама команда была создана в нем, то она не удаляется с мапы команд бакита.
     
  18. fromgate

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

    Баллы:
    173
    Имя в Minecraft:
    fromgate
    Я не хочу, чтобы Ваши плагины и плагины тех, кто последует по Вашим стопам, ломали мои плагины удаляя их команды.
    Понимаете, когда мне напишут: "я выполняю команду а ничего не происходит", я не хочу заниматься декомпиляцией всех плагинов пользователя, чтобы определить, что автор одного из них решил, что его плагину важнее использовать команду чем моему.
     
  19. Автор темы
    CatCoder

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

    Баллы:
    76
    Имя в Minecraft:
    CatCoder
    Ну хорошо. На днях сделаю эту функцию опциональной, то есть разработчик сам будет решать удалять-ли конфликтующую команду.
     
  20. Dereku

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

    Баллы:
    173
    Skype:
    derek_unavailable
    Имя в Minecraft:
    _Dereku
    Да йоп вашу мать.
    https://github.com/CatCoderr/CommandFramework/blob/master/src/me/catcoder/cframework/Command.java#L8
    Подчищай мусор перед тем, как пушить на гит.
    И не "альяс", а "алиас".

    Майнкрафтовских команд нет в commandMap.
     

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