• Es freut uns dass du in unser Minecraft Forum gefunden hast. Hier kannst du mit über 130.000 Minecraft Fans über Minecraft diskutieren, Fragen stellen und anderen helfen. In diesem Minecraft Forum kannst du auch nach Teammitgliedern, Administratoren, Moderatoren , Supporter oder Sponsoren suchen. Gerne kannst du im Offtopic Bereich unseres Minecraft Forums auch über nicht Minecraft spezifische Themen reden. Wir hoffen dir gefällt es in unserem Minecraft Forum!

Problem mit meinem TestPlugin

Icetea0401

Minecrafter
Registriert
19 Januar 2013
Beiträge
2
Diamanten
0
Moinsen,
Ich habe da mal ein kleines Problem mit meinem Plugin (bewege mich noch auf relativen Neuland).
Und zwar habe ich in Eclipse keine sichtbaren Fehler, und in der Konsole steht auch das das Plugin erfolgreich geladen wurde, jedoch probiere ich den Command aus und nichts tut sich.

8k95su5t.png


Bei /plugins wird mir das Plugin auch angezeigt.

Code:


  1. package me.icetea0401.TestPlugin;


  2. import org.bukkit.command.Command;
  3. import org.bukkit.entity.Player;
  4. import org.bukkit.plugin.java.JavaPlugin;

  5. public class TestPlugin extends JavaPlugin {

  6. @Override
  7. public void onDisable() {
  8. System.out.println("Das Plugin wurde deaktiviert");
  9. }
  10. @Override
  11. public void onEnable() {
  12. System.out.println("Das Plugin wurde aktiviert");
  13. }
  14. public boolean onCommand(Command sender, Command cmd, String cmdLabel, String [] args){
  15. Player p = (Player)sender;
  16. if(cmd.getName().equalsIgnoreCase("test")){
  17. if(args.length == 0){
  18. p.sendMessage("Dies ist der Befehl Test");
  19. }
  20. }
  21. return true;




  22. }




  23. }


plugin.yml:

  1. name: TestPlugin
  2. author: Iceteat0401
  3. version: 0.1

  4. main: me.icetea0401.TestPlugin.TestPlugin

  5. commands:
  6. test:
  7. description: Eine Beschreibung


Wäre sehr nett wenn mir da jemand weiterhelfen könnte. :)

Achja und das Plugin ist für die Version 1.8 gedacht.

MFG Icetea.
 

Chrisliebär❤️

nur echt mit ❤️
Moderator
Registriert
19 Mai 2014
Beiträge
1.675
Diamanten
830
Dir ist schon bewusst, dass YML eingerückt werden muss? Ansonsten werden diese nicht erkannt (Sind keine Kinder von commands).
Ich denk das war das Forum, denn das Plugin wird ja laut Log korrekt geladen.

@Icetea0401 Pack das ganze nochmal in ordentliche Code Tags.
 
Zuletzt bearbeitet:

pasce1998

Minecrafter
Registriert
20 April 2014
Beiträge
21
Diamanten
300
Minecraft
pasce1998
Du hast einfach vergessen den Command zu laden! (in der void onEnable())
Falsch! Commands die in der Hauptklasse sind müssen nicht geladen werden, das werden sie automatisch ;)

@Icetea0401

Code:
    @Override
    public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
        if(command.getName().equalsIgnoreCase("test")){
            if(!(sender instanceof Player)){
                sender.sendMessage("Du musst ein Spieler sein!");
                return true;
            }
            Player p = (Player)sender;
            if(args.length == 0){
                p.sendMessage("Dies ist der Befehl Test");
                return true;
            }
            return false;
        }
        return false;
    }

Du hast zum einen das "@Override" vergessen. Zum anderen solltest du nicht einfach den CommandSender zu einem Spieler casten, statdessen zuerst abfragen, ob der CommandSender überhaupt ein Spieler ist.
Zum anderen darfst du keine Argumente in Minecraft eingeben, da du ja überprüfst, ob die Argumentenlänge 0 ist
 
Oben