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

Bungeecord Erledigt Command Syntax - ich finde meinen Fehler nicht

dmmk218

Redstoneengineer
Mitglied seit
28 Juni 2018
Beiträge
42
Alter
21
Hallo zusammen,

ich habe ein kleines Plugin geschrieben jedoch bekomme ich bei einem Command keinerlei Rückmeldung sowie keine Fehlermeldung in der Konsole.

Hier ist mein CommandExecutor

Java:
public class AuthenticateCommand extends Command {

    public HashMap<ProxiedPlayer, Integer> playerAttempCount = new HashMap<>();

    public AuthenticateCommand(String name) {
        super(name);
    }

    @Override
    public void execute(CommandSender sender, String[] args) {

        if (sender instanceof ProxiedPlayer) {

            ProxiedPlayer p = (ProxiedPlayer)sender;

            if (p.hasPermission("network.bAuth.auth")) {

                if (args.length == 0) {

                    if (p.hasPermission("network.bAuth.admin")) {
                        p.sendMessage(TextComponent.fromLegacyText(Data.data.help1));
                    }
                    p.sendMessage(TextComponent.fromLegacyText(Data.data.help2));
                    p.sendMessage(TextComponent.fromLegacyText(Data.data.help3));

                }

                else if (args.length == 1) {

                    if (args[0].equalsIgnoreCase("reload")) {

                        if (p.hasPermission("network.bAuth.admin")) {

                            try {
                                Data.data.load();
                                Data.data.reload();
                                p.sendMessage(TextComponent.fromLegacyText(Data.data.reloadSucces));
                            } catch (IOException e) {
                                p.sendMessage(TextComponent.fromLegacyText(Data.data.reloadError));
                                e.printStackTrace();
                            }

                        }

                        else {

                            p.sendMessage(TextComponent.fromLegacyText(Data.data.noPerm));

                        }

                    }

                    else if (args[0].equalsIgnoreCase("register")) {

                        if (p.hasPermission("network.bAuth.register")) {

                            try {

                                if (MySQL.mySQL.isRegistered(p)) {

                                    p.sendMessage(TextComponent.fromLegacyText(Data.data.alreadyRegistered));

                                } else {

                                    String authCode = GoogleAuthAPI.googleAuthAPI.createGoogleKey();
                                    String serialize = AESSerializer.aesSerializer.serializeGoogleKey(authCode);

                                    p.sendMessage(TextComponent.fromLegacyText(Data.data.codeMessage.replace("%code%", authCode)));
                                    p.sendMessage(TextComponent.fromLegacyText(Data.data.codeMessage2));
                                    p.sendMessage(TextComponent.fromLegacyText(Data.data.codeMessage3));

                                    MySQL.mySQL.createPlayer(p, serialize);

                                }

                            } catch (Exception e) {

                                p.sendMessage(TextComponent.fromLegacyText(Data.data.generalError));
                                e.printStackTrace();

                            }

                        } else {

                            p.sendMessage(TextComponent.fromLegacyText(Data.data.noPerm));

                        }

                    }

                    else {

                        if (p.hasPermission("network.bAuth.admin")) {
                            p.sendMessage(TextComponent.fromLegacyText(Data.data.help1));
                        }
                        p.sendMessage(TextComponent.fromLegacyText(Data.data.help2));
                        p.sendMessage(TextComponent.fromLegacyText(Data.data.help3));

                    }

                }

                else if (args.length == 2) {

                    if (args[0].equalsIgnoreCase("login")) {

                        if (p.hasPermission("network.bAuth.login")) {

                            if (args[1].matches("[0-9]+")) {

                                if (args[1].length() == 6) {

                                try {

                                    if (Blocker.blocker.isAuthenticated.get(p) != null) {
                                        if (Blocker.blocker.isAuthenticated.get(p) == true)
                                            p.sendMessage(TextComponent.fromLegacyText(Data.data.alreadyLoggedIn));
                                        return;

                                    }

                                    if (!MySQL.mySQL.isRegistered(p)) {

                                        p.sendMessage(TextComponent.fromLegacyText(Data.data.needRegister));
                                        return;

                                    }

                                    int code = Integer.parseInt(args[1]);
                                    String secretKey = null;
                                    String key = null;
                                    try {
                                        secretKey = MySQL.mySQL.getPlayer(p);
                                    } catch (Exception e) {
                                        p.sendMessage(TextComponent.fromLegacyText(Data.data.generalError));
                                        e.printStackTrace();
                                    }
                                    try {
                                        key = AESSerializer.aesSerializer.deserializeGoogleKey(secretKey);
                                    } catch (Exception e) {
                                        p.sendMessage(TextComponent.fromLegacyText(Data.data.generalError));
                                        e.printStackTrace();
                                    }

                                    if (!GoogleAuthAPI.googleAuthAPI.check(key, code)) {

                                        p.sendMessage(TextComponent.fromLegacyText(Data.data.wrongCode));

                                        if (!playerAttempCount.containsKey(p)) playerAttempCount.put(p, 1);
                                        else playerAttempCount.replace(p, playerAttempCount.get(p) + 1);

                                        if (playerAttempCount.get(p) >= Data.data.maxAttemps) {

                                            for (String s : Data.data.safetyCommands) {
                                                if (s.toLowerCase().startsWith("%log%")) {
                                                    System.out.println(s.replace("%log%", "").replaceAll("%player%", p.getName())
                                                            .replaceAll("%attemps%", String.valueOf(playerAttempCount.get(p)).replaceAll("%ip%", p.getAddress().toString())));
                                                } else {
                                                    ProxyServer.getInstance().getPluginManager().dispatchCommand(ProxyServer.getInstance().getConsole(), s.replaceAll("%player%", p.getName()));
                                                }
                                            }

                                        }

                                    } else {

                                        p.sendMessage(TextComponent.fromLegacyText(Data.data.success));
                                        if (Blocker.isAuthenticated.containsKey(p))
                                            Blocker.isAuthenticated.replace(p, true);
                                        else Blocker.isAuthenticated.put(p, true);
                                        try {
                                            MySQL.mySQL.updatePlayer(p, code);
                                        } catch (Exception e) {
                                            e.printStackTrace();
                                        }

                                    }

                                } catch (Exception e) {
                                    p.sendMessage(TextComponent.fromLegacyText(Data.data.generalError));
                                    e.printStackTrace();
                                }

                                } else {

                                    p.sendMessage(TextComponent.fromLegacyText(Data.data.wrongCode));

                                }

                            } else {

                                p.sendMessage(TextComponent.fromLegacyText(Data.data.wrongCode));

                            }

                        } else {

                            p.sendMessage(TextComponent.fromLegacyText(Data.data.noPerm));

                        }

                    }

                    else {

                        if (p.hasPermission("network.bAuth.admin")) {
                            p.sendMessage(TextComponent.fromLegacyText(Data.data.help1));
                        }
                        p.sendMessage(TextComponent.fromLegacyText(Data.data.help2));
                        p.sendMessage(TextComponent.fromLegacyText(Data.data.help3));

                    }

                }

                else if (args.length >= 3) {

                    if (p.hasPermission("network.bAuth.admin")) {
                        p.sendMessage(TextComponent.fromLegacyText(Data.data.help1));
                    }
                    p.sendMessage(TextComponent.fromLegacyText(Data.data.help2));
                    p.sendMessage(TextComponent.fromLegacyText(Data.data.help3));

                }

            } else {

                p.sendMessage(TextComponent.fromLegacyText(Data.data.noPerm));

            }

        } else {

            sender.sendMessage(TextComponent.fromLegacyText(ChatColor.DARK_RED + "The Console don't need to auth!"));

        }

    }
}
Und hier mein ChatEvent um Commands und Nachrichten zu blocken

Java:
@EventHandler(priority = EventPriority.HIGHEST)
    public void onChat(ChatEvent e) {

        ProxiedPlayer p = (ProxiedPlayer) e.getSender();

        if (p.hasPermission("network.bauth.verify")) {

            if (isAuthenticated.get(p) != null) {

                if (isAuthenticated.get(p) == false) {

                    if (e.getMessage().toLowerCase().startsWith("/bauth")) {

                        e.setCancelled(false);

                    } else if (e.getMessage().toLowerCase().startsWith("/auth")) {

                        e.setCancelled(false);

                    } else if (e.getMessage().toLowerCase().startsWith("/bungeeauth")) {

                        e.setCancelled(false);

                    } else {

                        e.setCancelled(true);
                        p.sendMessage(TextComponent.fromLegacyText(Data.data.needLogin));

                    }

                }

            }

        }

    }

Soweit funktioniert alles bis auf den markierten Login Part aus dem Command.


Vielen dank und Entschuldigung für meine eventuelle Blindheit im voraus


LG dmmk218
 

BloodSKreaper

Miner
Osterei Experte
Mitglied seit
12 Oktober 2014
Beiträge
190
Minecraft
BloodSKreaper
Guten Tag,

hast du schon versucht mit Debugging-Messages herauszufinden, bis wohin dein Code ausgeführt wird? Wenn nicht, dann würde ich dies versuchen. Generell würde ich an deiner Stelle mehr mit Unterprogrammen arbeiten, damit der Code nicht so schnell unübersichtlich wird.

Freundliche Grüße
BloodSKreaper
 

dmmk218

Redstoneengineer
Mitglied seit
28 Juni 2018
Beiträge
42
Alter
21
Guten Tag,

hast du schon versucht mit Debugging-Messages herauszufinden, bis wohin dein Code ausgeführt wird? Wenn nicht, dann würde ich dies versuchen. Generell würde ich an deiner Stelle mehr mit Unterprogrammen arbeiten, damit der Code nicht so schnell unübersichtlich wird.

Freundliche Grüße
BloodSKreaper

Klar werde ich mal versuchen klar könnte man hier und da noch kürzen (kam mir jetzt nicht so riesig vor hab noch alte 30 Zoll Apple Cinema Displays xD, und ich find es ist in IntelliJ sowieso alles sehr übersichtlich) wobei ich schon viel gekürzt habe :D
Aber ja ich werd mal ein paar debug messages einbinden und mich nochmal melden
 

dmmk218

Redstoneengineer
Mitglied seit
28 Juni 2018
Beiträge
42
Alter
21
Uff ganz dummer Fehler das ich den übersehen habe / konnte o_O

Falsch:
if (Blocker.blocker.isAuthenticated.get(p) != null) {
                                        if (Blocker.blocker.isAuthenticated.get(p) == true)
                                            p.sendMessage(TextComponent.fromLegacyText(Data.data.alreadyLoggedIn));
                                        return;

                                    }
Richtig:
if (Blocker.isAuthenticated.get(p) != null) {
                                        if (Blocker.isAuthenticated.get(p) == true) {
                                            p.sendMessage(TextComponent.fromLegacyText(Data.data.alreadyLoggedIn));
                                            return;
                                        }

                                    }
LG dmmk218 :p
 

Twitter

Allgemein
Hilfe Benutzer
  • Kroseida Kroseida:
    aber auch die Nutzung von vielen Welten macht probleme
  • BloodEko BloodEko:
    Gut eine Welt ist kein kleines Objekt da sind dann viele Sache doppelt
  • BloodEko BloodEko:
    Sachen'
  • BloodEko BloodEko:
    Die trotzdem sync sind?
  • iTz_Proph3t iTz_Proph3t:
    Nix für alle Ohren Kroseida :p
  • Kroseida Kroseida:
    discord? :p
  • iTz_Proph3t iTz_Proph3t:
    ne heut nix, hatte migräne anfall, kopf streikt komplett bei allem
  • ❤️可愛いちゃん️❤️ ❤️可愛いちゃん️❤️:
    Fürs Spamen im Chat reichts scheinbar
  • Kroseida Kroseida:
    ChinaMann, meine Nudeln haben nicht gut geschmeckt. Kannst du den Chinesen um die Ecke bitte verbessern?
  • Matthias Matthias:
    Guten Morgen
  • hopeburger hopeburger:
    Guten Morgen
  • Stern☆ Stern☆:
    Morgen :)
  • OhneKompetenz OhneKompetenz:
    Wisst ihr was?
  • OhneKompetenz OhneKompetenz:
    Ich heise OhneKompetenz wusstet ihr das schon?
  • Kroseida Kroseida:
    Abend
  • LottaXL LottaXL:
    Moin, moin =)
  • iTz_Proph3t iTz_Proph3t:

    Mal wieder Live-Support, vlt. später mit @Hadde-chan und @Dean nen Drachen vom Himmel holen!
  • iTz_Proph3t iTz_Proph3t:

    Gibt mal wieder n Gratis Spiel beim Humble Bundle
  • ❤️可愛いちゃん️❤️ ❤️可愛いちゃん️❤️:
    Musste man sich früher auch für kostenlose Games für den Newsletter anmelden?
  • Kroseida Kroseida:
    Ich sitze bereits fucking 1 Stunde damit ich in die Berufsschule komme
  • ❤️可愛いちゃん️❤️ ❤️可愛いちゃん️❤️:
    Dann steh halt wenn du nicht länger sitzen wills?
  • Kroseida Kroseida:
    Du bist doof
  • iTz_Proph3t iTz_Proph3t:
    Danke :3
  • Kroseida Kroseida:
    Du nicht.
    Kroseida Kroseida: Du nicht.
    Oben