• 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!

Command ausführen

F

felunka

Guest
Hi!
Ich habe folgenden Ansatz:
Code:
package bungeehandler;

import org.bukkit.Bukkit;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
import org.bukkit.plugin.java.JavaPlugin;

public class bungeehandler extends JavaPlugin{
    public void onEnable(){
        System.out.println("[Bungeehandler] wird gestartet!");
    }
   
    public void onDisable(){
        System.out.println("[Bungeehandler] wird gestoppt!");
    }
   
    public boolean onCommand(CommandSender sender, Command cmd, String cmdLabel, String[] args){
        if ( sender instanceof Player )
        {
            Player p = (Player) sender;
            if ( cmd.getName().equalsIgnoreCase("play"))
            {
                if (p.hasPermission("bungeehandler.player"))
                {
                    if ( args.length == 0)
                    {
                        p.sendMessage("§eBitte gib ein Spiel ein das du Spielen möchtest!");
                    }
                    else
                    {
                        p.dispatchCommand("server " + args[0]);
                    }
                }
                return true;
            }
            else
            {
                return false;
            }
        }
        else
        {
            System.out.println("[Bungeehandler] Dieser Befehl ist nur für Spieler!");
        }
    }

}
Wieso ist in Eclipse meine Zeile 32 rot bei "dispatchCommand" mit der Beründung: "The method dispatchCommand(String) is undefined for the type Player"???
 
F

felunka

Guest
ich hab was gefunden!
Code:
package bungeehandler;

import java.io.ByteArrayOutputStream;
import java.io.DataOutputStream;
import java.io.IOException;

import org.bukkit.Bukkit;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
import org.bukkit.plugin.java.JavaPlugin;

public class bungeehandler extends JavaPlugin{
    public void onEnable(){
        System.out.println("[Bungeehandler] wird gestartet!");
        Bukkit.getMessenger().registerOutgoingPluginChannel(this, "BungeeCord");
        System.out.println("[Bungeehandler] Outgoing Plugin Channel Registriert!");
    }
   
    public void onDisable(){
        System.out.println("[Bungeehandler] wird gestoppt!");
    }
   
    public boolean onCommand(CommandSender sender, Command cmd, String cmdLabel, String[] args){
        if ( sender instanceof Player )
        {
            Player p = (Player) sender;
            if ( cmd.getName().equalsIgnoreCase("play"))
            {
                if (p.hasPermission("bungeehandler.player"))
                {
                    if ( args.length == 0)
                    {
                        p.sendMessage("§eBitte gib ein Spiel ein das du Spielen möchtest!");
                    }
                    else
                    {
                        ByteArrayOutputStream b = new ByteArrayOutputStream();
                        DataOutputStream out = new DataOutputStream(b);
                               
                        try {
                            out.writeUTF("Connect");
                            out.writeUTF(args[0]);
                        } catch (IOException e) {
                            p.sendMessage("Während der Teleportierung ist ein Fehler aufgetreten: " + e.getMessage());
                        }
                        p.sendPluginMessage(this, "BungeeCord", b.toByteArray());
                        System.out.println("Spieler: " + p.getName() + " will sich zu: " + args[0] + " teleportieren!");
                    }
                }
                return true;
            }
            else
            {
                return false;
            }
        }
        else
        {
            System.out.println("[Bungeehandler] Dieser Befehl ist nur für Spieler!");
            return false;
        }
    }

}
 
Oben