Войти или зарегистрироваться
  • Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.

Помогите Как обратиться к плагину из другого класса?

DemoNIKman

Активный участник
Пользователь
Баллы
66
Имя в Minecraft
DemoNIKman
Как обратиться к плагину из другого класса? Например:
BukkitRunnable runnableSlime = new BukkitRunnable() {

@Override
public void run() {
Locations.Locations_class.setBlock(Material.SLIME_BLOCK);
}
};runnableSlime.runTaskTimer(plugin, 1L, 50L);

Где plugin - место для плагина. А главном методе это - this. А если это не главный метод, то что там должно стоять? Помогите, пожалуйста!!
 
Уже разобрался
Bukkit.getPluginManager().getPlugin("Название плагина")
Спасибо... :D
 
Можно и так:
JavaScript:
public void onEnable() {
Bukkit.getServer().getPluginManager.registerEvents(YourClass(), this);
}
это не то, что нужно автору.
автор, обычно вроде делают в главном классе public static MyPlugin plugin, в onEnable plugin = this, а потом юзают MyPlugin.plugin.
 
Если речь идет о необходимости обращения к объекту класса Plugin, то достаточно просто создать ссылку на него:

public class A extends JavaPlugin;

public static JavaPlugin plugin;

public void onEnable() {
plugin = this;
}

И далее статично обращаться к нему = A.plugin;

А от того, что написал @_EnderWorld_ у меня чуть глаза не вытекли.
Ладно он написал что-то вообще не относящееся к данной теме, но YourClass()...
 
Можно передавать ссылку на текущий объект(this) в конструктор, что, на мой взгляд,
удобнее:
Java:
public class MyPlugin extends JavaPlugin
{
    private ListenerManager listenerManager;

    public void onEnable()
    {
        listenersManager = new ListenersManager(this);
...
Java:
public class ListenersManager
{
    private MyPlugin plugin;

    public ListenersManager(MyPlugin plugin)
    {
        this.plugin = plugin;
    }
...
 
Последнее редактирование:

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

Назад
Верх