Помогите Подключить плагин

Статус
Закрыто для дальнейших ответов.

Fenix78563

Активный участник
Пользователь
Баллы
76
Имя в Minecraft
Blc_Dragon
Доброго времени суток, форумчане. Опять я и мой бред.

В этот раз меня интересует как подключать сторонние плагины в свой.

Если не трудно, то можно пошаговенькую инструкцию для дибильчика?

Заранее спасибо
 
Java:
  Other other = null;
  public void onEnable() {
      other = (Other) getServer().getPluginManager().getPlugin("Other");
  }
 
Смотря в каком смысле подключить, распиши полностью.
 
Смотря в каком смысле подключить, распиши полностью.
Что бы я в своем плагине мог использовать методы подключенного

Java:
  Other other = null;
  public void onEnable() {
      other = (Other) getServer().getPluginManager().getPlugin("Other");
  }
это все что мне необходимо сделать?
 
Просто импортируй, например TitleBar.sendTabTitle(String, String); и всё
 
Просто импортируй, например TitleBar.sendTabTitle(String, String); и всё
Подключай так же, как и ядро

здорово пипец, но прям крутится поганая мысль, что у меня в плагинах может и не оказаться такого плагина. Юзер получит страшную ошибку, и не будет даже знать что с ней делать...

И еще, я хочу подключить плагин Vault, а у него есть какая то инструкция, и там что то написано, но я не понял что. Прямо не верится что это что то не нужное.

https://github.com/MilkBowl/VaultAPI/blob/master/README.md
 
здорово пипец, но прям крутится поганая мысль, что у меня в плагинах может и не оказаться такого плагина. Юзер получит страшную ошибку, и не будет даже знать что с ней делать...

И еще, я хочу подключить плагин Vault, а у него есть какая то инструкция, и там что то написано, но я не понял что. Прямо не верится что это что то не нужное.

https://github.com/MilkBowl/VaultAPI/blob/master/README.md
Так проверяй и все
if(other!=null && other.isEnabled()) {
registerEvents.чтототам
}
 
Последнее редактирование:
нашел в некотрых плагинах в файле plugin.yml сточку softdepended: [plugin, plugin2].

Это что такое?

Если не трудно, то можно пошаговенькую инструкцию для дибильчика?

Прошу знающих осветить все аспекты (или хотя бы самые важные)
 
нашел в некотрых плагинах в файле plugin.yml сточку softdepended: [plugin, plugin2].

Это что такое?



Прошу знающих осветить все аспекты (или хотя бы самые важные)
Юзай обычный depend, если плагин не должен работать без зависимости.
 
Юзай обычный depend, если плагин не должен работать без зависимости.
да е-мае, я первый раз сталкиваюсь с таким, в гугле информации ~0, поэтому прошу еще раз:

Напишите пожалуйста ПОДРОБНО, ведь то что для вас очевидно, для меня новое и не известное. спасибо за понимание
 
да е-мае, я первый раз сталкиваюсь с таким, в гугле информации ~0, поэтому прошу еще раз:

Напишите пожалуйста ПОДРОБНО, ведь то что для вас очевидно, для меня новое и не известное. спасибо за понимание
  1. Подключаем к проекту .jar файл нужного нам плагина как библиотеку.
  2. В нужном месте, в нашем проекте, подключаем сторонний плагин строкой(для примера взял WG):
    Java:
    private WorldGuardPlugin worldGuard = (WorldGuardPlugin) getServer().getPluginManager().getPlugin("WorldGuard");
  3. Вызываем методы стороннего плагина, используя ссылку worldGuard.
 
  1. Подключаем к проекту .jar файл нужного нам плагина как библиотеку.
  2. В нужном месте, в нашем проекте, подключаем сторонний плагин строкой(для примера взял WG):
    Java:
    private WorldGuardPlugin worldGuard = (WorldGuardPlugin) getServer().getPluginManager().getPlugin("WorldGuard");
  3. Вызываем методы стороннего плагина, используя ссылку worldGuard.
На вот пример:
Java:
if ((Bukkit.getPluginManager().isPluginEnabled("WorldGuard")) &&
       (!((WorldGuardPlugin) Bukkit.getPluginManager().getPlugin("WorldGuard")).canBuild(p, e.getBlock()))) { return;
 
ММ, здорово, реализация в коде уже представлена кучей методов.

Что все таки с softdepend, чем он отличается от softdepended

И еще, я хочу подключить плагин Vault, а у него есть какая то инструкция, и там что то написано, но я не понял что. Прямо не верится что это что то не нужное.

https://github.com/MilkBowl/VaultAPI/blob/master/README.md
 
ММ, здорово, реализация в коде уже представлена кучей методов.

Что все таки с softdepend, чем он отличается от softdepended
Атрибутом softdepend ты задаешь список плагинов, без которых твой плагин работать не будет.Все плагины, которые есть в этом списке загружаются до того, как загрузится твой плагин.Список плагинов задаешь как обычный yaml массив.
 
ММ, здорово, реализация в коде уже представлена кучей методов.

Что все таки с softdepend, чем он отличается от softdepended
В главном классе сократи сделай метод WorldGuardPlugin и всё.
А Vault подключай в главном классе, как показано на той странице.
 
На вот пример:
Java:
if ((Bukkit.getPluginManager().isPluginEnabled("WorldGuard")) &&
       (!((WorldGuardPlugin) Bukkit.getPluginManager().getPlugin("WorldGuard")).canBuild(p, e.getBlock()))) { return;
Ты сделал проверку, на то включён ли плагин, но не сделал проверку на то, есть ли он вообще.Нужно добавить проверку ссылки на null.
 
здорово пипец, но прям крутится поганая мысль, что у меня в плагинах может и не оказаться такого плагина. Юзер получит страшную ошибку, и не будет даже знать что с ней делать...

И еще, я хочу подключить плагин Vault, а у него есть какая то инструкция, и там что то написано, но я не понял что. Прямо не верится что это что то не нужное.

https://github.com/MilkBowl/VaultAPI/blob/master/README.md
Java:
 public static Economy econ = null;

@Override
public void onEnable() {
if (!setupEconomy() ) {
log.severe(String.format("[%s] - Disabled due to no Vault dependency found!", getDescription().getName()));
getServer().getPluginManager().disablePlugin(this);
return;
}


private boolean setupEconomy() {
if (getServer().getPluginManager().getPlugin("Vault") == null) {
return false;
}
RegisteredServiceProvider<Economy> rsp = getServer().getServicesManager().getRegistration(Economy.class);
if (rsp == null) {
return false;
}
econ = rsp.getProvider();
return econ != null;
}
Это в главном классе должно быть, а потом например Main.econ.withdrawPlayer(p, 1000.0D); - Снять со счета 1000 или Main.econ.getBalance(p); - Получение баланса
и Vault как библиотеку подключи.(и плагин на валюту естастна добавь, а то выдаст ошибку "Disabled due to no Vault dependency found!" (Essentials, например)
 
Спасибо большое, ответы получены. Тему закрываю

(как то не удобно даже, хоть бы лайк поставить мог)
 
Статус
Закрыто для дальнейших ответов.
Назад
Верх