Minecraft Java Plugin - Auslagern?
Hey,
ich habe in der onEnable() Methode Bukkit.getOnlinePlayers(). Funktioniert super. Wenn ich jetzt aber eine neue Datei mache geht Bukkit.getOnlinePlayers() nicht mehr, woher soll die Datei auch wissen, dass es Bukkit... gibt. Wie kann ich nun aber dafür sorgen, dass Java dieses Bukkit erkennt. Muss man das übergeben wie in einer Funktion in PHP, Implementieren, Erweitern (Extend)...?
Code:
GetOnlinePlayers Klasse:
package xxx.xxx.xxx.cmds;
import xxx.xxx.xxx.main.Main;
public class GetOnlinePlayers extends Main {
System.out.println(Bukkit.getOnlinePlayers());//Klappt nicht
}
Main Klasse:
package xxx.xxx.xxx.main;
import org.bukkit.Bukkit;
import org.bukkit.plugin.java.JavaPlugin;
public class Main extends JavaPlugin {
//System.out.println(Bukkit.getOnlinePlayers()); // hier klappt es nicht
public void onEnable() {
System.out.println(Bukkit.getOnlinePlayers()); //hier klappt es
}
}
Wie kann ich jetzt also Bukkit "auslagern" und später drauf zugreifen?
Geht das mit Gettern?
Ich habe mittlerweile den Fehler gefunden. Man musste es einmal mehr verschachteln also so:
package xxx.xxx.xxx.cmds;
import xxx.xxx.xxx.main.Main;
public class GetOnlinePlayers extends Main {
public void smth(){
System.out.println(Bukkit.getOnlinePlayers());
}
}
1 Antwort

Musst natürlich in jeder Klasse wo du das nutzen willst Bukkit importieren. In deiner GetOnlinePlayers-Klasse fehlt oben die Zeile
import org.bukkit.Bukkit;
Ob dein Code so funktioniert ist fraglich, ich empfehle erstmal ein Tutorial zum Programmieren von Minecraft-Plugins oder aber das Einlesen in die Docs der Api.
Wenn ich org.bukkit.Bukkit importiere dann ist der Punkt nach System.out rot und am Ende die letzte Klammer.