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
Und hier mein ChatEvent um Commands und Nachrichten zu blocken
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
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!"));
}
}
}
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