diff --git a/src/de/steamwar/bungeecore/ArenaMode.java b/src/de/steamwar/bungeecore/ArenaMode.java index f2df5bc..9636c5d 100644 --- a/src/de/steamwar/bungeecore/ArenaMode.java +++ b/src/de/steamwar/bungeecore/ArenaMode.java @@ -10,9 +10,9 @@ public class ArenaMode { private static Map byInternal = new HashMap<>(); private static Random random = new Random(); - static void init(Configuration config){ - for(String internalName : config.getKeys()){ - new ArenaMode(internalName, config.getSection(internalName)); + static void init(){ + for(String internalName : Config.GAMES.getKeys()){ + new ArenaMode(internalName, Config.GAMES.getSection(internalName)); } } diff --git a/src/de/steamwar/bungeecore/Broadcaster.java b/src/de/steamwar/bungeecore/Broadcaster.java index 49df73f..0f35f32 100644 --- a/src/de/steamwar/bungeecore/Broadcaster.java +++ b/src/de/steamwar/bungeecore/Broadcaster.java @@ -6,21 +6,16 @@ import java.util.concurrent.TimeUnit; class Broadcaster { - private static String [] broadCastMsgs; private int lastBroadCast = 0; Broadcaster(){ ProxyServer.getInstance().getScheduler().schedule(BungeeCore.get(), () -> { if(!ProxyServer.getInstance().getPlayers().isEmpty()) - BungeeCore.broadcast(BungeeCore.CHAT_PREFIX + broadCastMsgs[lastBroadCast]); + BungeeCore.broadcast(Config.CHAT_PREFIX + Config.BROADCASTS[lastBroadCast]); lastBroadCast++; - if(lastBroadCast == broadCastMsgs.length){ + if(lastBroadCast == Config.BROADCASTS.length){ lastBroadCast = 0; } }, 10, 10, TimeUnit.MINUTES); } - - static void setBroadCastMsgs(String[] broadCastMsgs) { - Broadcaster.broadCastMsgs = broadCastMsgs; - } } diff --git a/src/de/steamwar/bungeecore/BungeeCore.java b/src/de/steamwar/bungeecore/BungeeCore.java index 8005f19..fe1e978 100644 --- a/src/de/steamwar/bungeecore/BungeeCore.java +++ b/src/de/steamwar/bungeecore/BungeeCore.java @@ -7,6 +7,7 @@ import de.steamwar.bungeecore.listeners.mods.LabyMod; import de.steamwar.bungeecore.sql.SQL; import de.steamwar.bungeecore.sql.SteamwarUser; import de.steamwar.bungeecore.sql.Team; +import de.steamwar.bungeecore.ts3.TS3Handler; import net.md_5.bungee.api.ChatMessageType; import net.md_5.bungee.api.CommandSender; import net.md_5.bungee.api.ProxyServer; @@ -17,12 +18,7 @@ import net.md_5.bungee.api.config.ServerInfo; import net.md_5.bungee.api.connection.ProxiedPlayer; import net.md_5.bungee.api.plugin.Plugin; import net.md_5.bungee.config.Configuration; -import net.md_5.bungee.config.ConfigurationProvider; -import net.md_5.bungee.config.YamlConfiguration; -import java.io.File; -import java.io.IOException; -import java.time.format.DateTimeFormatter; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -31,17 +27,6 @@ import java.util.logging.Level; public class BungeeCore extends Plugin { - public static final String SERVER_TEAMCHAT_PREFIX = "§8STC §e"; - public static final String TEAMCHAT_PREFIX = "§8TC §e"; - public static final DateTimeFormatter DATE_FORMAT = DateTimeFormatter.ofPattern("dd.MM.yyyy"); - - public static String CHAT_PREFIX; - public static String WORLD_FOLDER; - public static String BAUWELT_PROTOTYP; - public static String LOBBY_SERVER; - public static String USERWORLDS15; - public static String BAUWELT15; - private static BungeeCore instance; public static final Map serverPermissions = new HashMap<>(); @@ -50,7 +35,9 @@ public class BungeeCore extends Plugin { @Override public void onEnable(){ setInstance(this); - loadConfig(); + Persistent.setChatPrefix(Config.CHAT_PREFIX); + Persistent.setLobbyServer(Config.LOBBY_SERVER); + SQL.connect(); new ConnectionListener(); new Forge(); @@ -58,6 +45,13 @@ public class BungeeCore extends Plugin { new ChatListener(); new BanListener(); + new EventStarter(); + new Broadcaster(); + new SessionManager(); + new TS3Handler(); + PollSystem.init(); + ArenaMode.init(); + commands.put("/b", null); commands.put("/gs", null); commands.put("/bau", null); @@ -88,19 +82,30 @@ public class BungeeCore extends Plugin { new EventRescheduleCommand(); new PollCommand(); new MuteCommand(); - - new EventStarter(); - new Broadcaster(); - new SessionManager(); + new TSVerifyCommand(); getProxy().getScheduler().schedule(this, () -> { SteamwarUser.clearCache(); Team.clearCache(); }, 1, 1, TimeUnit.HOURS); + + for(final String serverName : Config.SERVERS.getKeys()){ + final Configuration server = Config.SERVERS.getSection(serverName); + List cmds = server.getStringList("commands"); + BungeeCore.serverPermissions.put(serverName, "bungeecore.server." + server.getString("permission")); + String cmd = cmds.remove(0); + new ServerSwitchCommand( + cmd, + serverName, + BungeeCore.serverPermissions.get(serverName), + cmds.toArray(new String[0]) + ); + } } @Override public void onDisable(){ + TS3Handler.close(); SQL.close(); } @@ -159,62 +164,6 @@ public class BungeeCore extends Plugin { get().getLogger().log(Level.SEVERE, msg, e); } - private static void loadConfig(){ - Configuration config; - try{ - if(!get().getDataFolder().exists() && !get().getDataFolder().mkdir()) - throw new IOException(); - File configFile = new File(get().getDataFolder().getPath(), "config.yml"); - if(!configFile.exists()){ - boolean created = configFile.createNewFile(); - if(created) - ProxyServer.getInstance().stop("Config file not initialized"); - else - ProxyServer.getInstance().stop("Could not save conig file"); - return; - } - config = ConfigurationProvider.getProvider(YamlConfiguration.class).load(configFile); - }catch(IOException e){ - log("Could not save/load config.yml", e); - ProxyServer.getInstance().stop(); - return; - } - - CHAT_PREFIX = config.getString("prefix"); - WORLD_FOLDER = config.getString("worldfolder"); - BAUWELT_PROTOTYP = config.getString("bauweltprototyp"); - LOBBY_SERVER = config.getString("lobbyserver"); - USERWORLDS15 = config.getString("userworlds15"); - BAUWELT15 = config.getString("bauwelt15"); - Broadcaster.setBroadCastMsgs(config.getStringList("broadcasts").toArray(new String[1])); - PollSystem.init(config.getString("poll.question"), config.getStringList("poll.answers")); - Persistent.setChatPrefix(CHAT_PREFIX); - Persistent.setLobbyServer(LOBBY_SERVER); - - SQL.connect( - config.getString("db.url"), - config.getString("db.weburl"), - config.getString("db.username"), - config.getString("db.password") - ); - - ArenaMode.init(config.getSection("games")); - - final Configuration servers = config.getSection("servers"); - for(final String serverName : servers.getKeys()){ - final Configuration server = servers.getSection(serverName); - List cmds = server.getStringList("commands"); - serverPermissions.put(serverName, "bungeecore.server." + server.getString("permission")); - String cmd = cmds.remove(0); - new ServerSwitchCommand( - cmd, - serverName, - serverPermissions.get(serverName), - cmds.toArray(new String[0]) - ); - } - } - private static void setInstance(BungeeCore core){ instance = core; } diff --git a/src/de/steamwar/bungeecore/Config.java b/src/de/steamwar/bungeecore/Config.java new file mode 100644 index 0000000..d69d1f5 --- /dev/null +++ b/src/de/steamwar/bungeecore/Config.java @@ -0,0 +1,88 @@ +package de.steamwar.bungeecore; + +import net.md_5.bungee.api.ProxyServer; +import net.md_5.bungee.config.Configuration; +import net.md_5.bungee.config.ConfigurationProvider; +import net.md_5.bungee.config.YamlConfiguration; + +import java.io.File; +import java.io.IOException; +import java.time.format.DateTimeFormatter; +import java.util.List; + +public class Config { + private Config(){} + + public static final String SERVER_TEAMCHAT_PREFIX = "§8STC §e"; + public static final String TEAMCHAT_PREFIX = "§8TC §e"; + public static final DateTimeFormatter DATE_FORMAT = DateTimeFormatter.ofPattern("dd.MM.yyyy"); + + public static final String CHAT_PREFIX; + public static final String WORLD_FOLDER; + public static final String BAUWELT_PROTOTYP; + public static final String LOBBY_SERVER; + public static final String USERWORLDS15; + public static final String BAUWELT15; + + public static final String[] BROADCASTS; + public static final String POLL_QUESTION; + public static final List POLL_ANSWERS; + + public static final String TS3_QUERY_USER; + public static final String TS3_QUERY_PASSWORD; + public static final String TS3_QUERY_NICKNAME; + public static final int TS3_QUERY_SERVERID; + public static final int TS3_QUERY_GROUPID; + + public static final String DB_URL; + public static final String DB_WEBURL; + public static final String DB_USERNAME; + public static final String DB_PASSWORD; + + public static final Configuration GAMES; + public static final Configuration SERVERS; + + static { + Configuration config; + try{ + if(!BungeeCore.get().getDataFolder().exists() && !BungeeCore.get().getDataFolder().mkdir()) + throw new SecurityException(); + File configFile = new File(BungeeCore.get().getDataFolder().getPath(), "config.yml"); + if(!configFile.exists()){ + configFile.createNewFile(); + ProxyServer.getInstance().stop("Config file not initialized"); + throw new SecurityException("Config file not initialized"); + } + config = ConfigurationProvider.getProvider(YamlConfiguration.class).load(configFile); + }catch(IOException e){ + BungeeCore.log("Could not save/load config.yml", e); + ProxyServer.getInstance().stop(); + throw new SecurityException(); + } + + CHAT_PREFIX = config.getString("prefix"); + WORLD_FOLDER = config.getString("worldfolder"); + BAUWELT_PROTOTYP = config.getString("bauweltprototyp"); + LOBBY_SERVER = config.getString("lobbyserver"); + USERWORLDS15 = config.getString("userworlds15"); + BAUWELT15 = config.getString("bauwelt15"); + + BROADCASTS = config.getStringList("broadcasts").toArray(new String[1]); + POLL_QUESTION = config.getString("poll.question"); + POLL_ANSWERS = config.getStringList("poll.answers"); + + TS3_QUERY_USER = config.getString("ts3query.user"); + TS3_QUERY_PASSWORD = config.getString("ts3query.password"); + TS3_QUERY_NICKNAME = config.getString("ts3query.nickname"); + TS3_QUERY_SERVERID = config.getInt("ts3query.serverid"); + TS3_QUERY_GROUPID = config.getInt("ts3query.groupid"); + + DB_URL = config.getString("db.url"); + DB_WEBURL = config.getString("db.weburl"); + DB_USERNAME = config.getString("db.username"); + DB_PASSWORD = config.getString("db.password"); + + GAMES = config.getSection("games"); + SERVERS = config.getSection("servers"); + } +} diff --git a/src/de/steamwar/bungeecore/EventStarter.java b/src/de/steamwar/bungeecore/EventStarter.java index c81b0e7..572033a 100644 --- a/src/de/steamwar/bungeecore/EventStarter.java +++ b/src/de/steamwar/bungeecore/EventStarter.java @@ -50,7 +50,7 @@ public class EventStarter implements Runnable { eventServer.put(blue, subserver); eventServer.put(red, subserver); - BungeeCore.broadcast(BungeeCore.CHAT_PREFIX + "§7Hier §eklicken §7für den Kampf §e" + blue.getTeamName() + " §8vs §e" + red.getTeamName(), + BungeeCore.broadcast(Config.CHAT_PREFIX + "§7Hier §eklicken §7für den Kampf §e" + blue.getTeamName() + " §8vs §e" + red.getTeamName(), "§eEvent beitreten", new ClickEvent(ClickEvent.Action.RUN_COMMAND, "/event " + blue.getTeamKuerzel())); } diff --git a/src/de/steamwar/bungeecore/SubserverSystem.java b/src/de/steamwar/bungeecore/SubserverSystem.java index 5010254..c80b013 100644 --- a/src/de/steamwar/bungeecore/SubserverSystem.java +++ b/src/de/steamwar/bungeecore/SubserverSystem.java @@ -25,7 +25,7 @@ public class SubserverSystem { if(o == null) return; - BungeeCore.send(o, BungeeCore.CHAT_PREFIX + "§e" + p.getName() + " §7möchte auf deine Bauwelt."); + BungeeCore.send(o, Config.CHAT_PREFIX + "§e" + p.getName() + " §7möchte auf deine Bauwelt."); BungeeCore.send(o, "§7Klicke §ehier§7, wenn du das erlauben möchtest.", "§e/bau addmember " + p.getName(), new ClickEvent(ClickEvent.Action.RUN_COMMAND, "/bau addmember " + p.getName())); @@ -158,7 +158,7 @@ public class SubserverSystem { return; SteamwarUser user = SteamwarUser.get(owner); - copyBauwelt(p, BungeeCore.BAUWELT_PROTOTYP, BungeeCore.WORLD_FOLDER + owner.toString()); + copyBauwelt(p, Config.BAUWELT_PROTOTYP, Config.WORLD_FOLDER + owner.toString()); int port = freePort(4000); //Generate launch command @@ -189,7 +189,7 @@ public class SubserverSystem { return; SteamwarUser user = SteamwarUser.get(owner); - copyBauwelt(p, BungeeCore.BAUWELT15, BungeeCore.USERWORLDS15 + user.getId()); + copyBauwelt(p, Config.BAUWELT15, Config.USERWORLDS15 + user.getId()); int port = freePort(4000); //Generate launch command @@ -235,11 +235,11 @@ public class SubserverSystem { pr = pb.start(); pr.waitFor(); } catch (IOException e) { - BungeeCore.send(p, BungeeCore.CHAT_PREFIX + "§cDas Erstellen der Welt ist fehlgeschlagen."); + BungeeCore.send(p, Config.CHAT_PREFIX + "§cDas Erstellen der Welt ist fehlgeschlagen."); throw new SecurityException("Could not create Bauwelt", e); } catch (InterruptedException e){ BungeeCore.log("Could not create Bauwelt", e); - BungeeCore.send(p, BungeeCore.CHAT_PREFIX + "§cDas Erstellen der Welt ist fehlgeschlagen."); + BungeeCore.send(p, Config.CHAT_PREFIX + "§cDas Erstellen der Welt ist fehlgeschlagen."); Thread.currentThread().interrupt(); } } diff --git a/src/de/steamwar/bungeecore/commands/AlertCommand.java b/src/de/steamwar/bungeecore/commands/AlertCommand.java index 24671a5..f0af11b 100644 --- a/src/de/steamwar/bungeecore/commands/AlertCommand.java +++ b/src/de/steamwar/bungeecore/commands/AlertCommand.java @@ -1,6 +1,7 @@ package de.steamwar.bungeecore.commands; import de.steamwar.bungeecore.BungeeCore; +import de.steamwar.bungeecore.Config; import net.md_5.bungee.api.ChatColor; import net.md_5.bungee.api.CommandSender; @@ -13,12 +14,12 @@ public class AlertCommand extends BasicCommand { @Override public void execute(CommandSender sender, String[] args) { if(args.length == 0){ - BungeeCore.send(sender, BungeeCore.CHAT_PREFIX + "/alert [Nachricht]"); + BungeeCore.send(sender, Config.CHAT_PREFIX + "/alert [Nachricht]"); return; } StringBuilder msgBuilder = new StringBuilder(); - msgBuilder.append(BungeeCore.CHAT_PREFIX); + msgBuilder.append(Config.CHAT_PREFIX); for (String arg : args){ msgBuilder.append(arg).append(" "); } diff --git a/src/de/steamwar/bungeecore/commands/BanCommand.java b/src/de/steamwar/bungeecore/commands/BanCommand.java index e81688c..f801e3c 100644 --- a/src/de/steamwar/bungeecore/commands/BanCommand.java +++ b/src/de/steamwar/bungeecore/commands/BanCommand.java @@ -1,6 +1,7 @@ package de.steamwar.bungeecore.commands; import de.steamwar.bungeecore.BungeeCore; +import de.steamwar.bungeecore.Config; import de.steamwar.bungeecore.sql.SteamwarUser; import net.md_5.bungee.api.CommandSender; @@ -19,7 +20,7 @@ public class BanCommand extends BasicCommand { @Override public void execute(CommandSender sender, String[] args) { if(args.length < 3){ - BungeeCore.send(sender, BungeeCore.CHAT_PREFIX + "/ban [Spieler] [dd.mm.yyyy oder perma] [Grund]"); + BungeeCore.send(sender, Config.CHAT_PREFIX + "/ban [Spieler] [dd.mm.yyyy oder perma] [Grund]"); return; } @@ -36,7 +37,7 @@ public class BanCommand extends BasicCommand { banReason.append(args[i]).append(" "); } String msg = banReason.toString(); - BungeeCore.send(sender, BungeeCore.CHAT_PREFIX + "Du hast " + target.getUserName() + " gebannt. Grund: §c" + msg); + BungeeCore.send(sender, Config.CHAT_PREFIX + "Du hast " + target.getUserName() + " gebannt. Grund: §c" + msg); target.ban(banTime, msg); } @@ -49,7 +50,7 @@ public class BanCommand extends BasicCommand { Date parsedDate = dateFormat.parse(arg); return new java.sql.Timestamp(parsedDate.getTime()); }catch(ParseException e){ - BungeeCore.send(sender, BungeeCore.CHAT_PREFIX + "§cUngültige Zeitangabe."); + BungeeCore.send(sender, Config.CHAT_PREFIX + "§cUngültige Zeitangabe."); return null; } } diff --git a/src/de/steamwar/bungeecore/commands/BasicCommand.java b/src/de/steamwar/bungeecore/commands/BasicCommand.java index 1a9e384..cda7787 100644 --- a/src/de/steamwar/bungeecore/commands/BasicCommand.java +++ b/src/de/steamwar/bungeecore/commands/BasicCommand.java @@ -1,6 +1,7 @@ package de.steamwar.bungeecore.commands; import de.steamwar.bungeecore.BungeeCore; +import de.steamwar.bungeecore.Config; import de.steamwar.bungeecore.sql.SteamwarUser; import net.md_5.bungee.api.CommandSender; import net.md_5.bungee.api.ProxyServer; @@ -36,7 +37,7 @@ abstract class BasicCommand extends Command implements TabExecutor { protected SteamwarUser user(CommandSender sender, String arg){ SteamwarUser target = SteamwarUser.get(arg); if(target == null) - BungeeCore.send(sender, BungeeCore.CHAT_PREFIX + "§cDer Spieler existiert nicht."); + BungeeCore.send(sender, Config.CHAT_PREFIX + "§cDer Spieler existiert nicht."); return target; } } diff --git a/src/de/steamwar/bungeecore/commands/BauCommand.java b/src/de/steamwar/bungeecore/commands/BauCommand.java index ec4fa8c..d236de7 100644 --- a/src/de/steamwar/bungeecore/commands/BauCommand.java +++ b/src/de/steamwar/bungeecore/commands/BauCommand.java @@ -13,7 +13,7 @@ public class BauCommand { private BauCommand(){} - private static final String UNKNOWN_PLAYER = BungeeCore.CHAT_PREFIX + "§cUnbekannter Spieler"; + private static final String UNKNOWN_PLAYER = Config.CHAT_PREFIX + "§cUnbekannter Spieler"; public static void onBau(ChatEvent e, String[] command){ ProxiedPlayer p = (ProxiedPlayer) e.getSender(); @@ -75,7 +75,7 @@ public class BauCommand { private static void addmember(ProxiedPlayer p, String[] command){ if (command.length == 2) { - BungeeCore.send(p, BungeeCore.CHAT_PREFIX + "/bau addmember "); + BungeeCore.send(p, Config.CHAT_PREFIX + "/bau addmember "); return; } @@ -84,21 +84,21 @@ public class BauCommand { BungeeCore.send(p, UNKNOWN_PLAYER); return; }else if (BauweltMember.getBauMember(p.getUniqueId(), target.getUuid()) != null) { - BungeeCore.send(p, BungeeCore.CHAT_PREFIX + "§cDieser Spieler ist bereits Mitglied auf deiner Welt"); + BungeeCore.send(p, Config.CHAT_PREFIX + "§cDieser Spieler ist bereits Mitglied auf deiner Welt"); return; } new BauweltMember(p.getUniqueId(), target.getUuid(), true, false, false); - BungeeCore.send(p, BungeeCore.CHAT_PREFIX + "§aDer Spieler wurde zu deiner Welt hinzugefügt"); + BungeeCore.send(p, Config.CHAT_PREFIX + "§aDer Spieler wurde zu deiner Welt hinzugefügt"); ProxiedPlayer z = ProxyServer.getInstance().getPlayer(target.getUuid()); if(z != null) - BungeeCore.send(z, BungeeCore.CHAT_PREFIX + "§aDu wurdest zu der Welt von §6" + p.getName() + " §ahinzugefügt"); + BungeeCore.send(z, Config.CHAT_PREFIX + "§aDu wurdest zu der Welt von §6" + p.getName() + " §ahinzugefügt"); } private static void teleport(ProxiedPlayer p, String[] command){ if (command.length == 2) { - BungeeCore.send(p, BungeeCore.CHAT_PREFIX + "/bau tp "); + BungeeCore.send(p, Config.CHAT_PREFIX + "/bau tp "); return; } @@ -108,7 +108,7 @@ public class BauCommand { return; }else if (!p.getUniqueId().equals(worldOwner.getUuid()) && BauweltMember.getBauMember(worldOwner.getUuid(), p.getUniqueId()) == null){ SubserverSystem.sendDeniedMessage(p, worldOwner.getUuid()); - BungeeCore.send(p, BungeeCore.CHAT_PREFIX + "§cDu darfst dich nicht auf diese Welt teleportieren"); + BungeeCore.send(p, Config.CHAT_PREFIX + "§cDu darfst dich nicht auf diese Welt teleportieren"); return; } SubserverSystem.sendToBauServer(p, worldOwner.getUuid()); @@ -143,7 +143,7 @@ public class BauCommand { private static void delmember(ProxiedPlayer p, String[] command){ if (command.length == 2) { - BungeeCore.send(p, BungeeCore.CHAT_PREFIX + "/bau delmember "); + BungeeCore.send(p, Config.CHAT_PREFIX + "/bau delmember "); return; } @@ -154,16 +154,16 @@ public class BauCommand { target.remove(); ProxiedPlayer z = ProxyServer.getInstance().getPlayer(SteamwarUser.get(target.getMemberID()).getUuid()); if(z != null){ - BungeeCore.send(z, BungeeCore.CHAT_PREFIX + "§cDu wurdest von der Welt von §6" + p.getName() + " §centfernt."); + BungeeCore.send(z, Config.CHAT_PREFIX + "§cDu wurdest von der Welt von §6" + p.getName() + " §centfernt."); Subserver server = Subserver.getSubserver(z); if(server != null && server.getType() == Servertype.BAUSERVER && ((Bauserver)server).getOwner().equals(p.getUniqueId())) - z.connect(ProxyServer.getInstance().getServerInfo(BungeeCore.LOBBY_SERVER)); + z.connect(ProxyServer.getInstance().getServerInfo(Config.LOBBY_SERVER)); } - BungeeCore.send(p, BungeeCore.CHAT_PREFIX + "§cDer Spieler wurde entfernt."); + BungeeCore.send(p, Config.CHAT_PREFIX + "§cDer Spieler wurde entfernt."); } private static void delete(ProxiedPlayer p){ - BungeeCore.send(p, BungeeCore.CHAT_PREFIX + "§aDeine Welt wird zurückgesetzt."); + BungeeCore.send(p, Config.CHAT_PREFIX + "§aDeine Welt wird zurückgesetzt."); ProxyServer.getInstance().getScheduler().runAsync(BungeeCore.get(), () -> { for (Subserver subserver : Subserver.getServerList()) { if (subserver.getType() == Servertype.BAUSERVER && ((Bauserver) subserver).getOwner().equals(p.getUniqueId())) { @@ -171,20 +171,20 @@ public class BauCommand { break; } } - File directory = new File(BungeeCore.WORLD_FOLDER + p.getUniqueId().toString()); + File directory = new File(Config.WORLD_FOLDER + p.getUniqueId().toString()); del(directory); }); } private static void testarena(ProxiedPlayer p, String[] command){ if (command.length == 2) { - BungeeCore.send(p, BungeeCore.CHAT_PREFIX + "/bau testarena "); + BungeeCore.send(p, Config.CHAT_PREFIX + "/bau testarena "); return; } ArenaMode mode = ArenaMode.getByChat(command[2]); if(mode == null){ - BungeeCore.send(p, BungeeCore.CHAT_PREFIX + "§cUnbekannter Spielmodus: " + command[2]); + BungeeCore.send(p, Config.CHAT_PREFIX + "§cUnbekannter Spielmodus: " + command[2]); return; } @@ -207,7 +207,7 @@ public class BauCommand { BauweltMember target = BauweltMember.getBauMember(p.getUniqueId(), member.getUuid()); if (target == null) { - BungeeCore.send(p, BungeeCore.CHAT_PREFIX + "§cDer Spieler ist kein Mitglied deiner Welt!"); + BungeeCore.send(p, Config.CHAT_PREFIX + "§cDer Spieler ist kein Mitglied deiner Welt!"); return null; } return target; @@ -215,7 +215,7 @@ public class BauCommand { private static BauweltMember toggle(ProxiedPlayer p, String[] command, String subcommand){ if (command.length == 2) { - BungeeCore.send(p, BungeeCore.CHAT_PREFIX + "/bau " + subcommand + " "); + BungeeCore.send(p, Config.CHAT_PREFIX + "/bau " + subcommand + " "); return null; } @@ -228,12 +228,12 @@ public class BauCommand { if(permission){ if(player != null) - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "§aDu kannst nun auf der Welt von §e" + player.getName() + "§a " + what); - BungeeCore.send(p, BungeeCore.CHAT_PREFIX + "§aDer Spieler darf nun " + what); + BungeeCore.send(player, Config.CHAT_PREFIX + "§aDu kannst nun auf der Welt von §e" + player.getName() + "§a " + what); + BungeeCore.send(p, Config.CHAT_PREFIX + "§aDer Spieler darf nun " + what); }else{ if(player != null) - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "§cDu kannst nun nicht mehr auf der Welt von §e" + player.getName() + "§c " + what); - BungeeCore.send(p, BungeeCore.CHAT_PREFIX + "§cDer Spieler darf nun nicht mehr " + what); + BungeeCore.send(player, Config.CHAT_PREFIX + "§cDu kannst nun nicht mehr auf der Welt von §e" + player.getName() + "§c " + what); + BungeeCore.send(p, Config.CHAT_PREFIX + "§cDer Spieler darf nun nicht mehr " + what); } } diff --git a/src/de/steamwar/bungeecore/commands/ChallengeCommand.java b/src/de/steamwar/bungeecore/commands/ChallengeCommand.java index a271435..b954f26 100644 --- a/src/de/steamwar/bungeecore/commands/ChallengeCommand.java +++ b/src/de/steamwar/bungeecore/commands/ChallengeCommand.java @@ -19,7 +19,7 @@ public class ChallengeCommand extends BasicCommand { @Override public void execute(CommandSender sender, String[] args) { if(args.length != 2){ - BungeeCore.send(sender, BungeeCore.CHAT_PREFIX + "§8/§echallenge §8[§7Spieler§8] §8[§7Spielmodus§8]"); + BungeeCore.send(sender, Config.CHAT_PREFIX + "§8/§echallenge §8[§7Spieler§8] §8[§7Spielmodus§8]"); return; } if(!(sender instanceof ProxiedPlayer)){ @@ -30,25 +30,25 @@ public class ChallengeCommand extends BasicCommand { Subserver subserver = Subserver.getSubserver(player); if(subserver != null && subserver.getType() == Servertype.ARENA){ - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "§cDu befindest dich bereits in einer Arena."); + BungeeCore.send(player, Config.CHAT_PREFIX + "§cDu befindest dich bereits in einer Arena."); return; } ProxiedPlayer target = ProxyServer.getInstance().getPlayer(args[0]); if(target == null){ - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "§cDer gewünschte Spieler ist nicht online."); + BungeeCore.send(player, Config.CHAT_PREFIX + "§cDer gewünschte Spieler ist nicht online."); return; } subserver = Subserver.getSubserver(target); if(subserver != null && subserver.getType() == Servertype.ARENA){ - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "§cDer Herausgeforderte ist bereits in einer Arena."); + BungeeCore.send(player, Config.CHAT_PREFIX + "§cDer Herausgeforderte ist bereits in einer Arena."); return; } ArenaMode mode = ArenaMode.getByChat(args[1]); if(mode == null){ - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "§cUnbekannter Spielmodus: " + args[1]); + BungeeCore.send(player, Config.CHAT_PREFIX + "§cUnbekannter Spielmodus: " + args[1]); return; } @@ -63,7 +63,7 @@ public class ChallengeCommand extends BasicCommand { arena.sendPlayer(player); arena.sendPlayer(target); - BungeeCore.broadcast(BungeeCore.CHAT_PREFIX + "§e" + mode.getDisplayName() + "§7-§eDuell§7: " + player.getName() + " vs " + target.getName(), + BungeeCore.broadcast(Config.CHAT_PREFIX + "§e" + mode.getDisplayName() + "§7-§eDuell§7: " + player.getName() + " vs " + target.getName(), "§aZuschauen", new ClickEvent(ClickEvent.Action.RUN_COMMAND, "/join " + player.getName())); }else{ @@ -73,10 +73,10 @@ public class ChallengeCommand extends BasicCommand { challenges.get(player).add(target); - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "§7Du hast §e" + target.getName() + " §7zu einem §e" + mode.getDisplayName() + "-Kampf §7herausgefordert!"); - BungeeCore.send(target, BungeeCore.CHAT_PREFIX + "§e" + player.getName() + " §7 hat dich zu einem §e" + mode.getDisplayName() + "-Kampf §7herausgefordert!"); + BungeeCore.send(player, Config.CHAT_PREFIX + "§7Du hast §e" + target.getName() + " §7zu einem §e" + mode.getDisplayName() + "-Kampf §7herausgefordert!"); + BungeeCore.send(target, Config.CHAT_PREFIX + "§e" + player.getName() + " §7 hat dich zu einem §e" + mode.getDisplayName() + "-Kampf §7herausgefordert!"); - BungeeCore.send(target, BungeeCore.CHAT_PREFIX + "§7Klicke §ehier§7, um die Herausforderung anzunehmen", + BungeeCore.send(target, Config.CHAT_PREFIX + "§7Klicke §ehier§7, um die Herausforderung anzunehmen", "§aHerausforderung annehmen", new ClickEvent(ClickEvent.Action.RUN_COMMAND, "/challenge " + player.getName() + " " + mode.getChatName())); } diff --git a/src/de/steamwar/bungeecore/commands/DenyCommand.java b/src/de/steamwar/bungeecore/commands/DenyCommand.java index afbe5e7..2266226 100644 --- a/src/de/steamwar/bungeecore/commands/DenyCommand.java +++ b/src/de/steamwar/bungeecore/commands/DenyCommand.java @@ -1,6 +1,6 @@ package de.steamwar.bungeecore.commands; -import de.steamwar.bungeecore.BungeeCore; +import de.steamwar.bungeecore.Config; import net.md_5.bungee.api.CommandSender; import net.md_5.bungee.api.chat.TextComponent; import net.md_5.bungee.api.connection.ProxiedPlayer; @@ -15,7 +15,7 @@ public class DenyCommand extends BasicCommand { public void execute(CommandSender sender, String[] args) { if(sender instanceof ProxiedPlayer){ ProxiedPlayer player = (ProxiedPlayer) sender; - player.sendMessage(new TextComponent(BungeeCore.CHAT_PREFIX + "§cUnbekannter Befehl.")); + player.sendMessage(new TextComponent(Config.CHAT_PREFIX + "§cUnbekannter Befehl.")); } } } \ No newline at end of file diff --git a/src/de/steamwar/bungeecore/commands/EventCommand.java b/src/de/steamwar/bungeecore/commands/EventCommand.java index f584bfd..98787e2 100644 --- a/src/de/steamwar/bungeecore/commands/EventCommand.java +++ b/src/de/steamwar/bungeecore/commands/EventCommand.java @@ -1,6 +1,7 @@ package de.steamwar.bungeecore.commands; import de.steamwar.bungeecore.BungeeCore; +import de.steamwar.bungeecore.Config; import de.steamwar.bungeecore.EventStarter; import de.steamwar.bungeecore.Subserver; import de.steamwar.bungeecore.sql.Event; @@ -45,13 +46,13 @@ public class EventCommand extends BasicCommand { Team team = Team.get(args[0]); if(team == null){ - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "§cDieses Team gibt es nicht"); + BungeeCore.send(player, Config.CHAT_PREFIX + "§cDieses Team gibt es nicht"); return; } Subserver eventArena = EventStarter.getEventServer().get(team); if(eventArena == null || !Subserver.getServerList().contains(eventArena)){ - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "§cDas Team kämpft derzeit nicht"); + BungeeCore.send(player, Config.CHAT_PREFIX + "§cDas Team kämpft derzeit nicht"); return; } @@ -59,10 +60,10 @@ public class EventCommand extends BasicCommand { } private void noCurrentEvent(ProxiedPlayer player){ - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "§cDerzeit findet kein Event statt"); + BungeeCore.send(player, Config.CHAT_PREFIX + "§cDerzeit findet kein Event statt"); List coming = Event.getComing(); if(!coming.isEmpty()){ - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "§eKommende Events§8:"); + BungeeCore.send(player, Config.CHAT_PREFIX + "§eKommende Events§8:"); for(Event e : coming){ BungeeCore.send(player, "§7" + e.getStart().toLocalDateTime().format(DATE_FORMAT) + @@ -83,7 +84,7 @@ public class EventCommand extends BasicCommand { } private void eventOverview(ProxiedPlayer player, Event currentEvent){ - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "§8/§eevent §8[§eTeam§8] - §7Um dich zum Kampf zu teleportieren"); + BungeeCore.send(player, Config.CHAT_PREFIX + "§8/§eevent §8[§eTeam§8] - §7Um dich zum Kampf zu teleportieren"); List fights = EventFight.getEvent(currentEvent.getEventID()); Instant now = Instant.now(); diff --git a/src/de/steamwar/bungeecore/commands/EventRescheduleCommand.java b/src/de/steamwar/bungeecore/commands/EventRescheduleCommand.java index ba0343c..f91860f 100644 --- a/src/de/steamwar/bungeecore/commands/EventRescheduleCommand.java +++ b/src/de/steamwar/bungeecore/commands/EventRescheduleCommand.java @@ -1,6 +1,7 @@ package de.steamwar.bungeecore.commands; import de.steamwar.bungeecore.BungeeCore; +import de.steamwar.bungeecore.Config; import de.steamwar.bungeecore.sql.Event; import de.steamwar.bungeecore.sql.EventFight; import de.steamwar.bungeecore.sql.Team; @@ -25,7 +26,7 @@ public class EventRescheduleCommand extends BasicCommand { ProxiedPlayer player = (ProxiedPlayer) sender; if(args.length != 2){ - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "§c/eventreschedule [Team1 (Blue)] [Team2 (Red)]"); + BungeeCore.send(player, Config.CHAT_PREFIX + "§c/eventreschedule [Team1 (Blue)] [Team2 (Red)]"); return; } @@ -33,7 +34,7 @@ public class EventRescheduleCommand extends BasicCommand { Team teamRed = Team.get(args[1]); Event event = Event.get(); if(teamBlue == null || teamRed == null || event == null){ - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "§cEin Team ist unbekannt / Derzeit kein Event"); + BungeeCore.send(player, Config.CHAT_PREFIX + "§cEin Team ist unbekannt / Derzeit kein Event"); return; } @@ -46,13 +47,13 @@ public class EventRescheduleCommand extends BasicCommand { continue; if(fight.getTeamBlue() == teamBlue.getTeamId() && fight.getTeamRed() == teamRed.getTeamId()){ - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "§aKampf startet in 30s"); + BungeeCore.send(player, Config.CHAT_PREFIX + "§aKampf startet in 30s"); fight.reschedule(); EventFight.loadAllComingFights(); return; } } - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "§cKein Kampf zwischen den Teams gefunden"); + BungeeCore.send(player, Config.CHAT_PREFIX + "§cKein Kampf zwischen den Teams gefunden"); } } diff --git a/src/de/steamwar/bungeecore/commands/FightCommand.java b/src/de/steamwar/bungeecore/commands/FightCommand.java index 131ec44..3150086 100644 --- a/src/de/steamwar/bungeecore/commands/FightCommand.java +++ b/src/de/steamwar/bungeecore/commands/FightCommand.java @@ -22,7 +22,7 @@ public class FightCommand extends BasicCommand { String realMap = mode.hasMap(args[1].toLowerCase()); if(realMap != null) return realMap; - BungeeCore.send(sender, BungeeCore.CHAT_PREFIX + "§cDie gewünschte Arena gibt es nicht."); + BungeeCore.send(sender, Config.CHAT_PREFIX + "§cDie gewünschte Arena gibt es nicht."); return null; }else{ return mode.getRandomMap(); @@ -32,12 +32,12 @@ public class FightCommand extends BasicCommand { @Override public void execute(CommandSender sender, String[] args) { if(args.length != 1 && args.length != 2){ - BungeeCore.send(sender, BungeeCore.CHAT_PREFIX + "§7Mit §e/fight §7kannst du einen neuen Kampf starten!"); - BungeeCore.send(sender, BungeeCore.CHAT_PREFIX + "§8/§efight §8[§7Spielmodus§8] <§7Arena§8>"); - BungeeCore.send(sender, BungeeCore.CHAT_PREFIX + "§8/§efight AirShip §8- §7Starte einen §eAirShip§8-§7Kampf§8!"); - BungeeCore.send(sender, BungeeCore.CHAT_PREFIX + "§8/§efight WarShip §8- §7Starte einen §eWarShip§8-§7Kampf§8!"); - BungeeCore.send(sender, BungeeCore.CHAT_PREFIX + "§8/§efight WarGear §8- §7Starte einen §eWarGear§8-§7Kampf§8!"); - BungeeCore.send(sender, BungeeCore.CHAT_PREFIX + "§8/§efight MiniWarGear §8- §7Starte einen §eMiniWarGear§8-§7Kampf"); + BungeeCore.send(sender, Config.CHAT_PREFIX + "§7Mit §e/fight §7kannst du einen neuen Kampf starten!"); + BungeeCore.send(sender, Config.CHAT_PREFIX + "§8/§efight §8[§7Spielmodus§8] <§7Arena§8>"); + BungeeCore.send(sender, Config.CHAT_PREFIX + "§8/§efight AirShip §8- §7Starte einen §eAirShip§8-§7Kampf§8!"); + BungeeCore.send(sender, Config.CHAT_PREFIX + "§8/§efight WarShip §8- §7Starte einen §eWarShip§8-§7Kampf§8!"); + BungeeCore.send(sender, Config.CHAT_PREFIX + "§8/§efight WarGear §8- §7Starte einen §eWarGear§8-§7Kampf§8!"); + BungeeCore.send(sender, Config.CHAT_PREFIX + "§8/§efight MiniWarGear §8- §7Starte einen §eMiniWarGear§8-§7Kampf"); return; } @@ -46,14 +46,14 @@ public class FightCommand extends BasicCommand { Subserver subserver = Subserver.getSubserver(player); if(subserver != null && subserver.getType() == Servertype.ARENA){ - BungeeCore.send(sender, BungeeCore.CHAT_PREFIX + "§cDu befindest dich bereits in einer Arena."); + BungeeCore.send(sender, Config.CHAT_PREFIX + "§cDu befindest dich bereits in einer Arena."); return; } ArenaMode mode = ArenaMode.getByChat(args[0]); if(mode == null){ - BungeeCore.send(sender, BungeeCore.CHAT_PREFIX + "§cUnbekannter Spielmodus: " + args[0]); + BungeeCore.send(sender, Config.CHAT_PREFIX + "§cUnbekannter Spielmodus: " + args[0]); return; } @@ -63,7 +63,7 @@ public class FightCommand extends BasicCommand { Subserver arena = SubserverSystem.startArena(mode, map, 0, null, null, player.getUniqueId(), null); arena.sendPlayer(player); - TextComponent tc = new TextComponent(BungeeCore.CHAT_PREFIX + "§7Klicke §ehier§7, um §e" + mode.getDisplayName() + " §7gegen §e" + player.getName() + " §7zu §7kämpfen!"); + TextComponent tc = new TextComponent(Config.CHAT_PREFIX + "§7Klicke §ehier§7, um §e" + mode.getDisplayName() + " §7gegen §e" + player.getName() + " §7zu §7kämpfen!"); tc.setHoverEvent(new HoverEvent(HoverEvent.Action.SHOW_TEXT, new ComponentBuilder("§aGegen §7" + player.getName() + " §ekämpfen").create())); tc.setClickEvent(new ClickEvent(ClickEvent.Action.RUN_COMMAND, "/join " + player.getName())); ProxyServer.getInstance().broadcast(tc); diff --git a/src/de/steamwar/bungeecore/commands/HelpCommand.java b/src/de/steamwar/bungeecore/commands/HelpCommand.java index f34c36f..088a47d 100644 --- a/src/de/steamwar/bungeecore/commands/HelpCommand.java +++ b/src/de/steamwar/bungeecore/commands/HelpCommand.java @@ -1,6 +1,6 @@ package de.steamwar.bungeecore.commands; -import de.steamwar.bungeecore.BungeeCore; +import de.steamwar.bungeecore.Config; import net.md_5.bungee.api.CommandSender; import net.md_5.bungee.api.chat.ClickEvent; import net.md_5.bungee.api.chat.ComponentBuilder; @@ -16,42 +16,42 @@ public class HelpCommand extends BasicCommand { @Override public void execute(CommandSender sender, String[] args) { if(args.length != 1){ - TextComponent tc = new TextComponent(BungeeCore.CHAT_PREFIX + "§7Kehre von überall mit §8/§el §7zur Lobby zurück!"); + TextComponent tc = new TextComponent(Config.CHAT_PREFIX + "§7Kehre von überall mit §8/§el §7zur Lobby zurück!"); tc.setHoverEvent(new HoverEvent(HoverEvent.Action.SHOW_TEXT, new ComponentBuilder("§eZurück zur Lobby").create())); tc.setClickEvent(new ClickEvent(ClickEvent.Action.RUN_COMMAND, "/l")); sender.sendMessage(tc); - tc = new TextComponent(BungeeCore.CHAT_PREFIX + "§7Komme mit §8/§ebau §7auf den Bauserver!"); + tc = new TextComponent(Config.CHAT_PREFIX + "§7Komme mit §8/§ebau §7auf den Bauserver!"); tc.setHoverEvent(new HoverEvent(HoverEvent.Action.SHOW_TEXT, new ComponentBuilder("§eZum Bauserver").create())); tc.setClickEvent(new ClickEvent(ClickEvent.Action.RUN_COMMAND, "/bauserver")); sender.sendMessage(tc); - tc = new TextComponent(BungeeCore.CHAT_PREFIX + "§7Erhalte mit §8/§ehelp bauserver §7Hilfe zum Bauserver!"); + tc = new TextComponent(Config.CHAT_PREFIX + "§7Erhalte mit §8/§ehelp bauserver §7Hilfe zum Bauserver!"); tc.setHoverEvent(new HoverEvent(HoverEvent.Action.SHOW_TEXT, new ComponentBuilder("§eHilfe zum Bauserver").create())); tc.setClickEvent(new ClickEvent(ClickEvent.Action.RUN_COMMAND, "/help bauserver")); sender.sendMessage(tc); - tc = new TextComponent(BungeeCore.CHAT_PREFIX + "§7Starte mit §8/§efight §7einen neuen Kampf!"); + tc = new TextComponent(Config.CHAT_PREFIX + "§7Starte mit §8/§efight §7einen neuen Kampf!"); tc.setHoverEvent(new HoverEvent(HoverEvent.Action.SHOW_TEXT, new ComponentBuilder("§eZum Kampfsystem").create())); tc.setClickEvent(new ClickEvent(ClickEvent.Action.RUN_COMMAND, "/fight")); sender.sendMessage(tc); - tc = new TextComponent(BungeeCore.CHAT_PREFIX + "§7Tippe §8/§echallenge§7, um jemanden herauszufordern!"); + tc = new TextComponent(Config.CHAT_PREFIX + "§7Tippe §8/§echallenge§7, um jemanden herauszufordern!"); tc.setHoverEvent(new HoverEvent(HoverEvent.Action.SHOW_TEXT, new ComponentBuilder("§eHerausfordern").create())); tc.setClickEvent(new ClickEvent(ClickEvent.Action.RUN_COMMAND, "/challenge")); sender.sendMessage(tc); - tc = new TextComponent(BungeeCore.CHAT_PREFIX + "§8/§eteam§7 für das Teamsystem!"); + tc = new TextComponent(Config.CHAT_PREFIX + "§8/§eteam§7 für das Teamsystem!"); tc.setHoverEvent(new HoverEvent(HoverEvent.Action.SHOW_TEXT, new ComponentBuilder("§eTeamverwaltung").create())); tc.setClickEvent(new ClickEvent(ClickEvent.Action.RUN_COMMAND, "/team")); sender.sendMessage(tc); - tc = new TextComponent(BungeeCore.CHAT_PREFIX + "§7Trete mit §8/§ejoin §8[§eSpieler§8] §7einem Kampf bei!"); + tc = new TextComponent(Config.CHAT_PREFIX + "§7Trete mit §8/§ejoin §8[§eSpieler§8] §7einem Kampf bei!"); tc.setHoverEvent(new HoverEvent(HoverEvent.Action.SHOW_TEXT, new ComponentBuilder("§eSpieler beitreten").create())); tc.setClickEvent(new ClickEvent(ClickEvent.Action.SUGGEST_COMMAND, "/join")); sender.sendMessage(tc); - tc = new TextComponent(BungeeCore.CHAT_PREFIX + "§7Schreibe mit §8/§elocal §7nur auf dem lokalen Server!"); + tc = new TextComponent(Config.CHAT_PREFIX + "§7Schreibe mit §8/§elocal §7nur auf dem lokalen Server!"); tc.setHoverEvent(new HoverEvent(HoverEvent.Action.SHOW_TEXT, new ComponentBuilder("§eLokaler Chat").create())); tc.setClickEvent(new ClickEvent(ClickEvent.Action.SUGGEST_COMMAND, "/local")); sender.sendMessage(tc); diff --git a/src/de/steamwar/bungeecore/commands/JoinmeCommand.java b/src/de/steamwar/bungeecore/commands/JoinmeCommand.java index 23a13dd..9af1fd9 100644 --- a/src/de/steamwar/bungeecore/commands/JoinmeCommand.java +++ b/src/de/steamwar/bungeecore/commands/JoinmeCommand.java @@ -27,17 +27,17 @@ public class JoinmeCommand extends BasicCommand { ProxiedPlayer player = (ProxiedPlayer) sender; if (args.length == 0 && player.hasPermission("bungeecore.joinme")) { - TextComponent tc = new TextComponent(BungeeCore.CHAT_PREFIX + "§7Klicke §ehier§8, §7um zu §e" + player.getName() + " §7auf §e" + player.getServer().getInfo().getName() + " §7zu kommen§8!"); + TextComponent tc = new TextComponent(Config.CHAT_PREFIX + "§7Klicke §ehier§8, §7um zu §e" + player.getName() + " §7auf §e" + player.getServer().getInfo().getName() + " §7zu kommen§8!"); tc.setHoverEvent(new HoverEvent(HoverEvent.Action.SHOW_TEXT, new ComponentBuilder("§aSpieler folgen").create())); tc.setClickEvent(new ClickEvent(ClickEvent.Action.RUN_COMMAND, "/join " + player.getName())); ProxyServer.getInstance().broadcast(tc); } else if (args.length == 1) { ProxiedPlayer target = ProxyServer.getInstance().getPlayer(args[0]); if(target == null || !target.isConnected()){ - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "§cDieser Spieler ist offline."); + BungeeCore.send(player, Config.CHAT_PREFIX + "§cDieser Spieler ist offline."); return; }else if(target.equals(player)){ - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "§cSei eins mit dir selbst!"); + BungeeCore.send(player, Config.CHAT_PREFIX + "§cSei eins mit dir selbst!"); return; } ServerInfo server = target.getServer().getInfo(); @@ -55,18 +55,18 @@ public class JoinmeCommand extends BasicCommand { subserver.sendPlayer(player); } else { SubserverSystem.sendDeniedMessage(player, bauserver.getOwner()); - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + DENY_MESSAGE); + BungeeCore.send(player, Config.CHAT_PREFIX + DENY_MESSAGE); } } }else if(serverPerm != null && !player.hasPermission(serverPerm)){ - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + DENY_MESSAGE); + BungeeCore.send(player, Config.CHAT_PREFIX + DENY_MESSAGE); }else if(serverPerm == null && !player.getGroups().contains("team")) { - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + DENY_MESSAGE); + BungeeCore.send(player, Config.CHAT_PREFIX + DENY_MESSAGE); }else{ player.connect(server); } } else { - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "§7Mit §8/§ejoin §8[§eSpieler§8] §7kannst du einem Spieler folgen §8(z.B. in eine Arena)§7."); + BungeeCore.send(player, Config.CHAT_PREFIX + "§7Mit §8/§ejoin §8[§eSpieler§8] §7kannst du einem Spieler folgen §8(z.B. in eine Arena)§7."); } } } diff --git a/src/de/steamwar/bungeecore/commands/KickCommand.java b/src/de/steamwar/bungeecore/commands/KickCommand.java index edf56b3..6dc9614 100644 --- a/src/de/steamwar/bungeecore/commands/KickCommand.java +++ b/src/de/steamwar/bungeecore/commands/KickCommand.java @@ -1,6 +1,7 @@ package de.steamwar.bungeecore.commands; import de.steamwar.bungeecore.BungeeCore; +import de.steamwar.bungeecore.Config; import net.md_5.bungee.api.CommandSender; import net.md_5.bungee.api.ProxyServer; import net.md_5.bungee.api.connection.ProxiedPlayer; @@ -16,27 +17,27 @@ public class KickCommand extends BasicCommand { @Override public void execute(CommandSender sender, String[] args) { if(args.length == 0){ - BungeeCore.send(sender, BungeeCore.CHAT_PREFIX + "/kick [Spieler] [Nachricht]"); + BungeeCore.send(sender, Config.CHAT_PREFIX + "/kick [Spieler] [Nachricht]"); return; } ProxiedPlayer target = ProxyServer.getInstance().getPlayer(args[0]); if(target == null){ - BungeeCore.send(sender, BungeeCore.CHAT_PREFIX + "§cDieser Spieler ist derzeit nicht online!"); + BungeeCore.send(sender, Config.CHAT_PREFIX + "§cDieser Spieler ist derzeit nicht online!"); return; } if(args.length == 1){ - target.disconnect(BungeeCore.stringToText(BungeeCore.CHAT_PREFIX + "§cDu wurdest gekickt.")); + target.disconnect(BungeeCore.stringToText(Config.CHAT_PREFIX + "§cDu wurdest gekickt.")); }else{ StringBuilder msgBuilder = new StringBuilder(); - msgBuilder.append(BungeeCore.CHAT_PREFIX).append("§c"); + msgBuilder.append(Config.CHAT_PREFIX).append("§c"); for (int i = 1; i < args.length; i++){ msgBuilder.append(args[i]).append(" "); } target.disconnect(BungeeCore.stringToText(msgBuilder.toString())); } - BungeeCore.send(sender, BungeeCore.CHAT_PREFIX + "Der Spieler " + target.getName() + " wurde gekickt."); + BungeeCore.send(sender, Config.CHAT_PREFIX + "Der Spieler " + target.getName() + " wurde gekickt."); } @Override diff --git a/src/de/steamwar/bungeecore/commands/MsgCommand.java b/src/de/steamwar/bungeecore/commands/MsgCommand.java index 33dd194..54f374c 100644 --- a/src/de/steamwar/bungeecore/commands/MsgCommand.java +++ b/src/de/steamwar/bungeecore/commands/MsgCommand.java @@ -1,6 +1,7 @@ package de.steamwar.bungeecore.commands; import de.steamwar.bungeecore.BungeeCore; +import de.steamwar.bungeecore.Config; import de.steamwar.bungeecore.sql.SteamwarUser; import net.md_5.bungee.api.CommandSender; import net.md_5.bungee.api.ProxyServer; @@ -23,7 +24,7 @@ public class MsgCommand extends BasicCommand { ProxiedPlayer player = (ProxiedPlayer) sender; if (args.length < 2) { - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "/msg [Benutzer] [Nachricht]"); + BungeeCore.send(player, Config.CHAT_PREFIX + "/msg [Benutzer] [Nachricht]"); return; } @@ -35,13 +36,13 @@ public class MsgCommand extends BasicCommand { ProxiedPlayer target = ProxyServer.getInstance().getPlayer(args[0]); if(target == null){ - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "§cDieser Spieler ist derzeit nicht online!"); + BungeeCore.send(player, Config.CHAT_PREFIX + "§cDieser Spieler ist derzeit nicht online!"); return; }else if(target.getChatMode() != ProxiedPlayer.ChatMode.SHOWN){ - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "§cDieser Spieler empfängt derzeit keine Chatnachrichten!"); + BungeeCore.send(player, Config.CHAT_PREFIX + "§cDieser Spieler empfängt derzeit keine Chatnachrichten!"); return; }else if(target.equals(player)){ - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "§cNachrichten an dich selbst hast du wirklich nicht nötig!"); + BungeeCore.send(player, Config.CHAT_PREFIX + "§cNachrichten an dich selbst hast du wirklich nicht nötig!"); return; } diff --git a/src/de/steamwar/bungeecore/commands/MuteCommand.java b/src/de/steamwar/bungeecore/commands/MuteCommand.java index cec2dcf..c895f68 100644 --- a/src/de/steamwar/bungeecore/commands/MuteCommand.java +++ b/src/de/steamwar/bungeecore/commands/MuteCommand.java @@ -1,6 +1,7 @@ package de.steamwar.bungeecore.commands; import de.steamwar.bungeecore.BungeeCore; +import de.steamwar.bungeecore.Config; import de.steamwar.bungeecore.sql.SteamwarUser; import net.md_5.bungee.api.CommandSender; @@ -15,7 +16,7 @@ public class MuteCommand extends BasicCommand { @Override public void execute(CommandSender sender, String[] args) { if(args.length < 3){ - BungeeCore.send(sender, BungeeCore.CHAT_PREFIX + "/mute [Spieler] [dd.mm.yyyy oder perma] [Grund]"); + BungeeCore.send(sender, Config.CHAT_PREFIX + "/mute [Spieler] [dd.mm.yyyy oder perma] [Grund]"); return; } @@ -32,7 +33,7 @@ public class MuteCommand extends BasicCommand { muteReason.append(args[i]).append(" "); } String msg = muteReason.toString(); - BungeeCore.send(sender, BungeeCore.CHAT_PREFIX + "Du hast " + target.getUserName() + " gemuted. Grund: §c" + msg); + BungeeCore.send(sender, Config.CHAT_PREFIX + "Du hast " + target.getUserName() + " gemuted. Grund: §c" + msg); target.mute(muteTime, msg); } } diff --git a/src/de/steamwar/bungeecore/commands/PingCommand.java b/src/de/steamwar/bungeecore/commands/PingCommand.java index 28bd9b1..8f5d56d 100644 --- a/src/de/steamwar/bungeecore/commands/PingCommand.java +++ b/src/de/steamwar/bungeecore/commands/PingCommand.java @@ -1,6 +1,6 @@ package de.steamwar.bungeecore.commands; -import de.steamwar.bungeecore.BungeeCore; +import de.steamwar.bungeecore.Config; import net.md_5.bungee.api.CommandSender; import net.md_5.bungee.api.connection.ProxiedPlayer; @@ -14,7 +14,7 @@ public class PingCommand extends BasicCommand { public void execute(CommandSender sender, String[] args) { if(sender instanceof ProxiedPlayer){ ProxiedPlayer player = (ProxiedPlayer) sender; - player.sendMessage(BungeeCore.CHAT_PREFIX + "§7Dein Ping beträgt §c" + player.getPing() + "§r§7 ms!"); + player.sendMessage(Config.CHAT_PREFIX + "§7Dein Ping beträgt §c" + player.getPing() + "§r§7 ms!"); } } } diff --git a/src/de/steamwar/bungeecore/commands/PollCommand.java b/src/de/steamwar/bungeecore/commands/PollCommand.java index 65ea965..acbbd29 100644 --- a/src/de/steamwar/bungeecore/commands/PollCommand.java +++ b/src/de/steamwar/bungeecore/commands/PollCommand.java @@ -1,6 +1,7 @@ package de.steamwar.bungeecore.commands; import de.steamwar.bungeecore.BungeeCore; +import de.steamwar.bungeecore.Config; import de.steamwar.bungeecore.listeners.PollSystem; import de.steamwar.bungeecore.sql.PollAnswer; import de.steamwar.bungeecore.sql.SteamwarUser; @@ -33,18 +34,18 @@ public class PollCommand extends BasicCommand { int answer; try { answer = Integer.parseUnsignedInt(args[0]); - if(answer < 1 || answer > PollSystem.answers()) + if(answer < 1 || answer > Config.POLL_ANSWERS.size()) throw new NumberFormatException(); }catch(NumberFormatException e){ - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "§cDas ist keine Antwortmöglichkeit!"); + BungeeCore.send(player, Config.CHAT_PREFIX + "§cDas ist keine Antwortmöglichkeit!"); return; } PollAnswer pollAnswer = PollAnswer.get(SteamwarUser.get(player.getUniqueId()).getId()); if(pollAnswer.hasAnswered()) - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "§aDeine Antwort wurde aktualisiert"); + BungeeCore.send(player, Config.CHAT_PREFIX + "§aDeine Antwort wurde aktualisiert"); else - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "§aDeine Antwort wurde registriert"); + BungeeCore.send(player, Config.CHAT_PREFIX + "§aDeine Antwort wurde registriert"); pollAnswer.setAnswer(answer); } diff --git a/src/de/steamwar/bungeecore/commands/RCommand.java b/src/de/steamwar/bungeecore/commands/RCommand.java index 2ff68d2..1c7edc7 100644 --- a/src/de/steamwar/bungeecore/commands/RCommand.java +++ b/src/de/steamwar/bungeecore/commands/RCommand.java @@ -1,6 +1,7 @@ package de.steamwar.bungeecore.commands; import de.steamwar.bungeecore.BungeeCore; +import de.steamwar.bungeecore.Config; import de.steamwar.bungeecore.sql.SteamwarUser; import net.md_5.bungee.api.CommandSender; import net.md_5.bungee.api.connection.ProxiedPlayer; @@ -16,7 +17,7 @@ public class RCommand extends BasicCommand { if(sender instanceof ProxiedPlayer){ ProxiedPlayer player = (ProxiedPlayer) sender; if(args.length == 0){ - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "/r [Antwort]"); + BungeeCore.send(player, Config.CHAT_PREFIX + "/r [Antwort]"); return; } @@ -28,15 +29,15 @@ public class RCommand extends BasicCommand { ProxiedPlayer target = MsgCommand.lastChats.get(player.getName().toLowerCase()); if(target == null){ - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "§cDu hast bisher mit niemandem geschrieben!"); + BungeeCore.send(player, Config.CHAT_PREFIX + "§cDu hast bisher mit niemandem geschrieben!"); return; } if(!target.isConnected()){ - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "§cDieser Spieler ist derzeit nicht online!"); + BungeeCore.send(player, Config.CHAT_PREFIX + "§cDieser Spieler ist derzeit nicht online!"); return; }else if(target.getChatMode() != ProxiedPlayer.ChatMode.SHOWN){ - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "§cDieser Spieler empfängt derzeit keine Chatnachrichten!"); + BungeeCore.send(player, Config.CHAT_PREFIX + "§cDieser Spieler empfängt derzeit keine Chatnachrichten!"); return; } diff --git a/src/de/steamwar/bungeecore/commands/ServerTeamchatCommand.java b/src/de/steamwar/bungeecore/commands/ServerTeamchatCommand.java index 91612b6..5d19850 100644 --- a/src/de/steamwar/bungeecore/commands/ServerTeamchatCommand.java +++ b/src/de/steamwar/bungeecore/commands/ServerTeamchatCommand.java @@ -1,6 +1,6 @@ package de.steamwar.bungeecore.commands; -import de.steamwar.bungeecore.BungeeCore; +import de.steamwar.bungeecore.Config; import net.md_5.bungee.api.ChatColor; import net.md_5.bungee.api.CommandSender; import net.md_5.bungee.api.ProxyServer; @@ -18,12 +18,12 @@ public class ServerTeamchatCommand extends BasicCommand { ProxiedPlayer player = (ProxiedPlayer) sender; if(args.length == 0){ - player.sendMessage(BungeeCore.CHAT_PREFIX + "/stc [Nachricht an das Team]"); + player.sendMessage(Config.CHAT_PREFIX + "/stc [Nachricht an das Team]"); return; } StringBuilder msgBuilder = new StringBuilder(); - msgBuilder.append(BungeeCore.SERVER_TEAMCHAT_PREFIX).append(sender.getName()).append("» §r"); + msgBuilder.append(Config.SERVER_TEAMCHAT_PREFIX).append(sender.getName()).append("» §r"); for (String arg : args){ msgBuilder.append(arg).append(" "); } diff --git a/src/de/steamwar/bungeecore/commands/TSVerifyCommand.java b/src/de/steamwar/bungeecore/commands/TSVerifyCommand.java new file mode 100644 index 0000000..fb82b87 --- /dev/null +++ b/src/de/steamwar/bungeecore/commands/TSVerifyCommand.java @@ -0,0 +1,58 @@ +package de.steamwar.bungeecore.commands; + +import de.steamwar.bungeecore.BungeeCore; +import de.steamwar.bungeecore.Config; +import de.steamwar.bungeecore.sql.SteamwarUser; +import de.steamwar.bungeecore.sql.TS3; +import de.steamwar.bungeecore.ts3.TS3Handler; +import net.md_5.bungee.api.CommandSender; +import net.md_5.bungee.api.connection.ProxiedPlayer; + +public class TSVerifyCommand extends BasicCommand { + public TSVerifyCommand() { + super("tsverify", null); + } + + @Override + public void execute(CommandSender sender, String[] args) { + if(!(sender instanceof ProxiedPlayer)) + return; + ProxiedPlayer player = (ProxiedPlayer) sender; + + if(args.length == 0){ + help(player); + return; + } + SteamwarUser user = SteamwarUser.get(player.getUniqueId()); + + switch(args[0].toLowerCase()){ + case "accept": + String ts3Id = TS3Handler.getToVerify().get(user.getId()); + if(ts3Id == null){ + BungeeCore.send(player, Config.CHAT_PREFIX + "§cDu hast keine Verknüpfungsanfrage erhalten"); + return; + } + + TS3Handler.createConnection(player, user, ts3Id); + break; + case "deny": + TS3Handler.getToVerify().remove(user.getId()); + BungeeCore.send(player, Config.CHAT_PREFIX + "§cTeamspeak-Verknüpfung abgelehnt"); + break; + case "free": + TS3 connection = TS3.get(user.getId()); + if(connection != null) + connection.free(); + BungeeCore.send(player, Config.CHAT_PREFIX + "§aDeine Teamspeak-Verknüpfung wurde aufgehoben"); + break; + default: + help(player); + } + } + + private void help(ProxiedPlayer player){ + BungeeCore.send(player, "§8/§etsverify accept §8- §7Verbindet deinen Minecraft-Account mit deinem TS3-Account"); + BungeeCore.send(player, "§8/§etsverify deny §8- §7Lehnt eine Verknüpfung ab"); + BungeeCore.send(player, "§8/§etsverify free §8- §7Entfernt deine bestehende Verbindung"); + } +} diff --git a/src/de/steamwar/bungeecore/commands/TeamCommand.java b/src/de/steamwar/bungeecore/commands/TeamCommand.java index 2d4552a..3afba0b 100644 --- a/src/de/steamwar/bungeecore/commands/TeamCommand.java +++ b/src/de/steamwar/bungeecore/commands/TeamCommand.java @@ -1,6 +1,7 @@ package de.steamwar.bungeecore.commands; import de.steamwar.bungeecore.BungeeCore; +import de.steamwar.bungeecore.Config; import de.steamwar.bungeecore.sql.Event; import de.steamwar.bungeecore.sql.SteamwarUser; import de.steamwar.bungeecore.sql.Team; @@ -22,29 +23,29 @@ public class TeamCommand extends BasicCommand { private static Map> invitations = new HashMap<>(); private void help(CommandSender sender){ - BungeeCore.send(sender, BungeeCore.CHAT_PREFIX + "§7Mit §e/team §7verwaltest du dein Team"); - BungeeCore.send(sender, BungeeCore.CHAT_PREFIX + "§8/§eteam list §8- §7Liste alle Teams auf"); - BungeeCore.send(sender, BungeeCore.CHAT_PREFIX + "§8/§eteam info §8- §7Informiere dich über ein Team"); + BungeeCore.send(sender, Config.CHAT_PREFIX + "§7Mit §e/team §7verwaltest du dein Team"); + BungeeCore.send(sender, Config.CHAT_PREFIX + "§8/§eteam list §8- §7Liste alle Teams auf"); + BungeeCore.send(sender, Config.CHAT_PREFIX + "§8/§eteam info §8- §7Informiere dich über ein Team"); if(!(sender instanceof ProxiedPlayer)) return; ProxiedPlayer player = (ProxiedPlayer) sender; SteamwarUser user = SteamwarUser.get(player.getUniqueId()); if(user.getTeam() == 0) { - BungeeCore.send(sender, BungeeCore.CHAT_PREFIX + "§8/§eteam create §8- §7Erstelle dein eigenes Team"); - BungeeCore.send(sender, BungeeCore.CHAT_PREFIX + "§8/§eteam join §8- §7Trete einem Team bei"); + BungeeCore.send(sender, Config.CHAT_PREFIX + "§8/§eteam create §8- §7Erstelle dein eigenes Team"); + BungeeCore.send(sender, Config.CHAT_PREFIX + "§8/§eteam join §8- §7Trete einem Team bei"); }else{ - BungeeCore.send(sender, BungeeCore.CHAT_PREFIX + "§8/§eteamchat §8- §7Sende Nachrichten an dein Team"); - BungeeCore.send(sender, BungeeCore.CHAT_PREFIX + "§8/§eteam event §8- §7Nehme an Events teil"); - BungeeCore.send(sender, BungeeCore.CHAT_PREFIX + "§8/§eteam leave §8- §7Verlasse dein Team"); + BungeeCore.send(sender, Config.CHAT_PREFIX + "§8/§eteamchat §8- §7Sende Nachrichten an dein Team"); + BungeeCore.send(sender, Config.CHAT_PREFIX + "§8/§eteam event §8- §7Nehme an Events teil"); + BungeeCore.send(sender, Config.CHAT_PREFIX + "§8/§eteam leave §8- §7Verlasse dein Team"); Team team = Team.get(user.getTeam()); if(team.getTeamLeader() == user.getId()){ - BungeeCore.send(sender, BungeeCore.CHAT_PREFIX + "§8/§eteam invite §8- §7Lade jemanden in dein Team ein"); - BungeeCore.send(sender, BungeeCore.CHAT_PREFIX + "§8/§eteam remove §8- §7Entferne jemanden aus deinem Team"); - BungeeCore.send(sender, BungeeCore.CHAT_PREFIX + "§8/§eteam changekuerzel §8- §7Ändere dein Teamkürzel"); - BungeeCore.send(sender, BungeeCore.CHAT_PREFIX + "§8/§eteam changename §8- §7Ändere deinen Teamnamen"); - BungeeCore.send(sender, BungeeCore.CHAT_PREFIX + "§8/§eteam changeleader §8- §7Ernenne jemanden zum Teamleader"); + BungeeCore.send(sender, Config.CHAT_PREFIX + "§8/§eteam invite §8- §7Lade jemanden in dein Team ein"); + BungeeCore.send(sender, Config.CHAT_PREFIX + "§8/§eteam remove §8- §7Entferne jemanden aus deinem Team"); + BungeeCore.send(sender, Config.CHAT_PREFIX + "§8/§eteam changekuerzel §8- §7Ändere dein Teamkürzel"); + BungeeCore.send(sender, Config.CHAT_PREFIX + "§8/§eteam changename §8- §7Ändere deinen Teamnamen"); + BungeeCore.send(sender, Config.CHAT_PREFIX + "§8/§eteam changeleader §8- §7Ernenne jemanden zum Teamleader"); } } } @@ -107,7 +108,7 @@ public class TeamCommand extends BasicCommand { return; if(args.length < 3){ - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "§8/§eteam create §8[§eTeamkürzel§8] §8[§eTeamname§8]"); + BungeeCore.send(player, Config.CHAT_PREFIX + "§8/§eteam create §8[§eTeamkürzel§8] §8[§eTeamname§8]"); return; } @@ -119,7 +120,7 @@ public class TeamCommand extends BasicCommand { Team.create(args[1], args[2], user.getId()); user.setTeam(Team.get(args[1]).getTeamId()); - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "§7Du hast das Team §e" + args[2] + " §7gegründet!"); + BungeeCore.send(player, Config.CHAT_PREFIX + "§7Du hast das Team §e" + args[2] + " §7gegründet!"); } private void join(ProxiedPlayer player, SteamwarUser user, String[] args){ @@ -130,7 +131,7 @@ public class TeamCommand extends BasicCommand { return; if(!invitations.containsKey(user)){ - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "§7Du hast keine Einladungen erhalten."); + BungeeCore.send(player, Config.CHAT_PREFIX + "§7Du hast keine Einladungen erhalten."); return; } @@ -141,7 +142,7 @@ public class TeamCommand extends BasicCommand { t = invs.get(0); }else{ if(args.length != 2){ - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "§8/§eteam join §8[§eTeam§8]"); + BungeeCore.send(player, Config.CHAT_PREFIX + "§8/§eteam join §8[§eTeam§8]"); StringBuilder sb = new StringBuilder().append("§7Du wurdest von diesen Teams eingeladen§8: §e"); for(Team inv : invs){ sb.append(inv.getTeamName()).append(" "); @@ -158,14 +159,14 @@ public class TeamCommand extends BasicCommand { } if(t == null){ - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "§cVon diesem Team wurdest du nicht eingeladen"); + BungeeCore.send(player, Config.CHAT_PREFIX + "§cVon diesem Team wurdest du nicht eingeladen"); return; } } user.setTeam(t.getTeamId()); invitations.remove(user); - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "§7Du bist dem Team §e" + t.getTeamName() + " §7beigetreten!"); + BungeeCore.send(player, Config.CHAT_PREFIX + "§7Du bist dem Team §e" + t.getTeamName() + " §7beigetreten!"); } private void leave(ProxiedPlayer player, SteamwarUser user, Team team){ @@ -173,7 +174,7 @@ public class TeamCommand extends BasicCommand { return; if(team.getTeamLeader() == user.getId() && team.size() > 1){ - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "§cBitte ernenne zunächst ein anderes Teammitglied zum Leader"); + BungeeCore.send(player, Config.CHAT_PREFIX + "§cBitte ernenne zunächst ein anderes Teammitglied zum Leader"); return; } @@ -183,7 +184,7 @@ public class TeamCommand extends BasicCommand { team.disband(); } - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "§7Du hast dein Team verlassen!"); + BungeeCore.send(player, Config.CHAT_PREFIX + "§7Du hast dein Team verlassen!"); } @@ -195,16 +196,16 @@ public class TeamCommand extends BasicCommand { return; if(args.length != 2){ - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "§8/§eteam invite §8[§eSpieler§8]"); + BungeeCore.send(player, Config.CHAT_PREFIX + "§8/§eteam invite §8[§eSpieler§8]"); return; } SteamwarUser target = SteamwarUser.get(args[1]); if(target == null){ - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "§cDiesen Spieler gibt es nicht"); + BungeeCore.send(player, Config.CHAT_PREFIX + "§cDiesen Spieler gibt es nicht"); return; }else if(target.getTeam() != 0){ - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "§cDieser Spieler ist bereits in einem Team"); + BungeeCore.send(player, Config.CHAT_PREFIX + "§cDieser Spieler ist bereits in einem Team"); return; } @@ -212,16 +213,16 @@ public class TeamCommand extends BasicCommand { invitations.put(target, new LinkedList<>()); if(invitations.get(target).contains(team)){ - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "§cDu hast diesen Spieler bereits eingeladen"); + BungeeCore.send(player, Config.CHAT_PREFIX + "§cDu hast diesen Spieler bereits eingeladen"); return; } invitations.get(target).add(team); - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "§7Du hast §e" + args[1] + " §7in das Team eingeladen!"); + BungeeCore.send(player, Config.CHAT_PREFIX + "§7Du hast §e" + args[1] + " §7in das Team eingeladen!"); ProxiedPlayer p = ProxyServer.getInstance().getPlayer(target.getUuid()); if(p != null) - BungeeCore.send(p, BungeeCore.CHAT_PREFIX + "§7Du wurdest in das Team §e" + team.getTeamName() + " §7eingeladen!"); + BungeeCore.send(p, Config.CHAT_PREFIX + "§7Du wurdest in das Team §e" + team.getTeamName() + " §7eingeladen!"); } private void remove(ProxiedPlayer player, SteamwarUser user, Team team, String[] args){ @@ -229,38 +230,38 @@ public class TeamCommand extends BasicCommand { return; if(args.length != 2){ - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "§8/§eteam remove §8[§eSpieler§8]"); + BungeeCore.send(player, Config.CHAT_PREFIX + "§8/§eteam remove §8[§eSpieler§8]"); return; } SteamwarUser target = SteamwarUser.get(args[1]); if(target == null){ - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "§cDiesen Spieler gibt es nicht"); + BungeeCore.send(player, Config.CHAT_PREFIX + "§cDiesen Spieler gibt es nicht"); return; } if(invitations.containsKey(target)){ if(invitations.get(target).remove(team)){ - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "§7Die Einladung wurde zurückgezogen"); + BungeeCore.send(player, Config.CHAT_PREFIX + "§7Die Einladung wurde zurückgezogen"); if(invitations.get(target).isEmpty()) invitations.remove(target); }else{ - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "§cDieser Spieler hat keine Einladung erhalten"); + BungeeCore.send(player, Config.CHAT_PREFIX + "§cDieser Spieler hat keine Einladung erhalten"); } return; } if(target.getTeam() != user.getTeam()){ - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "§cDieser Spieler ist nicht in deinem Team"); + BungeeCore.send(player, Config.CHAT_PREFIX + "§cDieser Spieler ist nicht in deinem Team"); return; } target.setTeam(0); - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "§7Der Spieler wurde aus dem Team entfernt"); + BungeeCore.send(player, Config.CHAT_PREFIX + "§7Der Spieler wurde aus dem Team entfernt"); ProxiedPlayer p = ProxyServer.getInstance().getPlayer(target.getUuid()); if(p != null) - BungeeCore.send(p, BungeeCore.CHAT_PREFIX + "§cDu wurdest aus dem Team entfernt"); + BungeeCore.send(p, Config.CHAT_PREFIX + "§cDu wurdest aus dem Team entfernt"); } private void changekuerzel(ProxiedPlayer player, SteamwarUser user, Team team, String[] args){ @@ -271,7 +272,7 @@ public class TeamCommand extends BasicCommand { return; if(args.length < 2){ - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "§8/§eteam changekuerzel §8[§eTeamkürzel§8]"); + BungeeCore.send(player, Config.CHAT_PREFIX + "§8/§eteam changekuerzel §8[§eTeamkürzel§8]"); return; } @@ -279,7 +280,7 @@ public class TeamCommand extends BasicCommand { return; team.setTeamKuerzel(args[1]); - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "§7Du hast das Kürzel des Teams geändert!"); + BungeeCore.send(player, Config.CHAT_PREFIX + "§7Du hast das Kürzel des Teams geändert!"); } private void changename(ProxiedPlayer player, SteamwarUser user, Team team, String[] args){ @@ -290,7 +291,7 @@ public class TeamCommand extends BasicCommand { return; if(args.length < 2){ - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "§8/§eteam changename §8[§eTeamname§8]"); + BungeeCore.send(player, Config.CHAT_PREFIX + "§8/§eteam changename §8[§eTeamname§8]"); return; } @@ -298,7 +299,7 @@ public class TeamCommand extends BasicCommand { return; team.setTeamName(args[1]); - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "§7Du hast das Team umbenannt!"); + BungeeCore.send(player, Config.CHAT_PREFIX + "§7Du hast das Team umbenannt!"); } private void changeleader(ProxiedPlayer player, SteamwarUser user, Team team, String[] args){ @@ -309,35 +310,35 @@ public class TeamCommand extends BasicCommand { return; if(args.length < 2){ - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "§cBitte gib ein Teammitglied an"); + BungeeCore.send(player, Config.CHAT_PREFIX + "§cBitte gib ein Teammitglied an"); return; } SteamwarUser target = SteamwarUser.get(args[1]); if(target == null){ - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "§cDen Spieler " + args[1] + " gibt es nicht"); + BungeeCore.send(player, Config.CHAT_PREFIX + "§cDen Spieler " + args[1] + " gibt es nicht"); return; } if(target.getTeam() != user.getTeam()){ - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "§cDer Spieler ist nicht in deinem Team"); + BungeeCore.send(player, Config.CHAT_PREFIX + "§cDer Spieler ist nicht in deinem Team"); return; } team.setTeamLeader(target.getId()); - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "§7Du hast den Spieler §e" + args[1] + " §7zum Leader gemacht!"); + BungeeCore.send(player, Config.CHAT_PREFIX + "§7Du hast den Spieler §e" + args[1] + " §7zum Leader gemacht!"); } private void info(ProxiedPlayer player, SteamwarUser user, Team team, String[] args){ if(args.length == 1 && user.getTeam() == 0){ - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "§8/§eteam info §8[§eTeamname§8]"); + BungeeCore.send(player, Config.CHAT_PREFIX + "§8/§eteam info §8[§eTeamname§8]"); return; }else if(user.getTeam() == 0 || args.length == 2){ team = Team.get(args[1]); } if(team == null){ - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "§cDieses Team gibt es nicht"); + BungeeCore.send(player, Config.CHAT_PREFIX + "§cDieses Team gibt es nicht"); return; } @@ -367,7 +368,7 @@ public class TeamCommand extends BasicCommand { } private void list(ProxiedPlayer player){ - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "§7§lTeamliste"); + BungeeCore.send(player, Config.CHAT_PREFIX + "§7§lTeamliste"); List all = Team.getAll(); for(Team tm : all){ BungeeCore.send(player, @@ -382,10 +383,10 @@ public class TeamCommand extends BasicCommand { return; if(args.length < 2){ - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "§8/§eteam event §8[§eEvent§8] - §7um daran teilzunehmen"); + BungeeCore.send(player, Config.CHAT_PREFIX + "§8/§eteam event §8[§eEvent§8] - §7um daran teilzunehmen"); Set events = TeamTeilnahme.getEvents(team.getTeamId()); if(!events.isEmpty()){ - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "§7Dein Team nimmt an folgenden Events teil§8:"); + BungeeCore.send(player, Config.CHAT_PREFIX + "§7Dein Team nimmt an folgenden Events teil§8:"); for(Event e : events) BungeeCore.send(player, "§7" + e.getStart().toLocalDateTime().format(EventCommand.DATE_FORMAT) + "§8: §e" + e.getEventName()); } @@ -400,34 +401,34 @@ public class TeamCommand extends BasicCommand { Event event = Event.get(args[1]); if(event == null){ - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "§cDieses Event gibt es nicht"); + BungeeCore.send(player, Config.CHAT_PREFIX + "§cDieses Event gibt es nicht"); return; } if(Instant.now().isAfter(event.getEnd().toInstant())){ - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "§cDieses Event ist bereits vorbei"); + BungeeCore.send(player, Config.CHAT_PREFIX + "§cDieses Event ist bereits vorbei"); return; } if(TeamTeilnahme.nimmtTeil(team.getTeamId(), event.getEventID())){ TeamTeilnahme.notTeilnehmen(team.getTeamId(), event.getEventID()); - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "§7Dein Team nimmt nicht mehr am Event teil"); + BungeeCore.send(player, Config.CHAT_PREFIX + "§7Dein Team nimmt nicht mehr am Event teil"); }else{ TeamTeilnahme.teilnehmen(team.getTeamId(), event.getEventID()); - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "§7Dein Team nimmt nun am Event §e" + event.getEventName() + " §7 teil!"); + BungeeCore.send(player, Config.CHAT_PREFIX + "§7Dein Team nimmt nun am Event §e" + event.getEventName() + " §7 teil!"); BungeeCore.send(player, "§7Um die Teilnahme abzusagen, wiederhole den Befehl"); } } private boolean checkTeamName(ProxiedPlayer player, Team team, String arg){ if(arg.length() < 4 || arg.length() > 15){ - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "§cEin Teamname muss aus 4 bis 15 Buchstaben bestehen"); + BungeeCore.send(player, Config.CHAT_PREFIX + "§cEin Teamname muss aus 4 bis 15 Buchstaben bestehen"); return true; } Team t = Team.get(arg); if(t != null && t.getTeamId() != team.getTeamId()){ - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "§cEs gibt bereits ein Team mit diesem Namen"); + BungeeCore.send(player, Config.CHAT_PREFIX + "§cEs gibt bereits ein Team mit diesem Namen"); return true; } return false; @@ -435,13 +436,13 @@ public class TeamCommand extends BasicCommand { private boolean checkTeamKuerzel(ProxiedPlayer player, Team team, String arg){ if(arg.length() < 2 || arg.length() > 4){ - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "§cEin Teamkürzel muss aus 2 bis 4 Buchstaben bestehen"); + BungeeCore.send(player, Config.CHAT_PREFIX + "§cEin Teamkürzel muss aus 2 bis 4 Buchstaben bestehen"); return true; } Team t = Team.get(arg); if(t != null && (team == null || t.getTeamId() != team.getTeamId())){ - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "§cEs gibt bereits ein Team mit diesem Namen"); + BungeeCore.send(player, Config.CHAT_PREFIX + "§cEs gibt bereits ein Team mit diesem Namen"); return true; } return false; @@ -449,7 +450,7 @@ public class TeamCommand extends BasicCommand { private boolean unwantedInTeam(ProxiedPlayer player, SteamwarUser user){ if(user.getTeam() != 0){ - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "§cDu bist bereits in einem Team"); + BungeeCore.send(player, Config.CHAT_PREFIX + "§cDu bist bereits in einem Team"); return true; } return false; @@ -457,7 +458,7 @@ public class TeamCommand extends BasicCommand { private boolean notInTeam(ProxiedPlayer player, SteamwarUser user){ if(user.getTeam() == 0){ - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "§cDu bist in keinem Team"); + BungeeCore.send(player, Config.CHAT_PREFIX + "§cDu bist in keinem Team"); return true; } return false; @@ -467,7 +468,7 @@ public class TeamCommand extends BasicCommand { if(notInTeam(player, user)) return true; if(team.getTeamLeader() != user.getId()){ - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "§cDu bist nicht der Teamleader"); + BungeeCore.send(player, Config.CHAT_PREFIX + "§cDu bist nicht der Teamleader"); return true; } return false; @@ -475,7 +476,7 @@ public class TeamCommand extends BasicCommand { private boolean notDuringEvent(ProxiedPlayer player){ if(Event.get() != null){ - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "§cDies ist während eines Events nicht möglich"); + BungeeCore.send(player, Config.CHAT_PREFIX + "§cDies ist während eines Events nicht möglich"); return true; } return false; diff --git a/src/de/steamwar/bungeecore/commands/TeamchatCommand.java b/src/de/steamwar/bungeecore/commands/TeamchatCommand.java index d370a4e..38a06fd 100644 --- a/src/de/steamwar/bungeecore/commands/TeamchatCommand.java +++ b/src/de/steamwar/bungeecore/commands/TeamchatCommand.java @@ -1,6 +1,7 @@ package de.steamwar.bungeecore.commands; import de.steamwar.bungeecore.BungeeCore; +import de.steamwar.bungeecore.Config; import de.steamwar.bungeecore.sql.SteamwarUser; import net.md_5.bungee.api.ChatColor; import net.md_5.bungee.api.ChatMessageType; @@ -21,17 +22,17 @@ public class TeamchatCommand extends BasicCommand { SteamwarUser user = SteamwarUser.get(player.getUniqueId()); if(user.getTeam() == 0){ - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "§cDu bist in keinem Team"); + BungeeCore.send(player, Config.CHAT_PREFIX + "§cDu bist in keinem Team"); return; } if(args.length == 0){ - BungeeCore.send(player, BungeeCore.TEAMCHAT_PREFIX + "/teamchat [Nachricht an das Team]"); + BungeeCore.send(player, Config.TEAMCHAT_PREFIX + "/teamchat [Nachricht an das Team]"); return; } StringBuilder msgBuilder = new StringBuilder(); - msgBuilder.append(BungeeCore.TEAMCHAT_PREFIX).append(sender.getName()).append("§8» §r"); + msgBuilder.append(Config.TEAMCHAT_PREFIX).append(sender.getName()).append("§8» §r"); for (String arg : args){ msgBuilder.append(arg).append(" "); } diff --git a/src/de/steamwar/bungeecore/commands/TpCommand.java b/src/de/steamwar/bungeecore/commands/TpCommand.java index 5924b28..5d41ee7 100644 --- a/src/de/steamwar/bungeecore/commands/TpCommand.java +++ b/src/de/steamwar/bungeecore/commands/TpCommand.java @@ -34,7 +34,7 @@ public class TpCommand extends BasicCommand { if(!(sender instanceof ProxiedPlayer)) return; if(!onTp((ProxiedPlayer) sender, args)) - BungeeCore.send(sender, BungeeCore.CHAT_PREFIX + "§cKonnte das angegebene Ziel nicht finden."); + BungeeCore.send(sender, Config.CHAT_PREFIX + "§cKonnte das angegebene Ziel nicht finden."); } @Override @@ -48,9 +48,9 @@ public class TpCommand extends BasicCommand { private static boolean onTp(ProxiedPlayer player, String[] args){ if(args.length == 0){ if(Event.get() == null) - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "§8/§etp §8[§7Spieler§8]"); + BungeeCore.send(player, Config.CHAT_PREFIX + "§8/§etp §8[§7Spieler§8]"); else - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "§8/§etp §8[§7Spieler §8oder §7Team§8]"); + BungeeCore.send(player, Config.CHAT_PREFIX + "§8/§etp §8[§7Spieler §8oder §7Team§8]"); return true; } @@ -106,13 +106,13 @@ public class TpCommand extends BasicCommand { subserver.sendPlayer(player); } else { SubserverSystem.sendDeniedMessage(player, bauserver.getOwner()); - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + DENY_MESSAGE); + BungeeCore.send(player, Config.CHAT_PREFIX + DENY_MESSAGE); } } }else if(serverPerm != null && !player.hasPermission(serverPerm)){ - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + DENY_MESSAGE); + BungeeCore.send(player, Config.CHAT_PREFIX + DENY_MESSAGE); }else if(serverPerm == null && !player.getGroups().contains("team")) { - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + DENY_MESSAGE); + BungeeCore.send(player, Config.CHAT_PREFIX + DENY_MESSAGE); }else{ player.connect(server); } diff --git a/src/de/steamwar/bungeecore/commands/UnbanCommand.java b/src/de/steamwar/bungeecore/commands/UnbanCommand.java index 25b8926..15ad0d7 100644 --- a/src/de/steamwar/bungeecore/commands/UnbanCommand.java +++ b/src/de/steamwar/bungeecore/commands/UnbanCommand.java @@ -1,6 +1,7 @@ package de.steamwar.bungeecore.commands; import de.steamwar.bungeecore.BungeeCore; +import de.steamwar.bungeecore.Config; import de.steamwar.bungeecore.sql.SteamwarUser; import net.md_5.bungee.api.CommandSender; @@ -16,7 +17,7 @@ public class UnbanCommand extends BasicCommand { @Override public void execute(CommandSender sender, String[] args) { if(args.length < 1){ - BungeeCore.send(sender, BungeeCore.CHAT_PREFIX + "/unban [Spieler]"); + BungeeCore.send(sender, Config.CHAT_PREFIX + "/unban [Spieler]"); return; } @@ -24,7 +25,7 @@ public class UnbanCommand extends BasicCommand { if(target == null) return; - BungeeCore.send(sender, BungeeCore.CHAT_PREFIX + "Du hast " + target.getUserName() + " entbannt."); + BungeeCore.send(sender, Config.CHAT_PREFIX + "Du hast " + target.getUserName() + " entbannt."); target.ban(Timestamp.from(new Date().toInstant()), ""); } } diff --git a/src/de/steamwar/bungeecore/commands/WebpwCommand.java b/src/de/steamwar/bungeecore/commands/WebpwCommand.java index 072d58f..04ef21b 100644 --- a/src/de/steamwar/bungeecore/commands/WebpwCommand.java +++ b/src/de/steamwar/bungeecore/commands/WebpwCommand.java @@ -1,6 +1,7 @@ package de.steamwar.bungeecore.commands; import de.steamwar.bungeecore.BungeeCore; +import de.steamwar.bungeecore.Config; import de.steamwar.bungeecore.sql.SteamwarUser; import net.md_5.bungee.api.CommandSender; import net.md_5.bungee.api.connection.ProxiedPlayer; @@ -16,18 +17,18 @@ public class WebpwCommand extends BasicCommand { if(sender instanceof ProxiedPlayer){ ProxiedPlayer player = (ProxiedPlayer) sender; if(args.length != 2){ - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "/webpw [Passwort] [Passwort wiederholen]"); + BungeeCore.send(player, Config.CHAT_PREFIX + "/webpw [Passwort] [Passwort wiederholen]"); return; }else if(!args[0].equals(args[1])){ - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "§cDie Passwörter stimmen nicht überein!"); + BungeeCore.send(player, Config.CHAT_PREFIX + "§cDie Passwörter stimmen nicht überein!"); return; }else if(args[0].length() < 6){ - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "§cDas Passwort muss mindestens 6 Zeichen lang sein!"); + BungeeCore.send(player, Config.CHAT_PREFIX + "§cDas Passwort muss mindestens 6 Zeichen lang sein!"); return; } SteamwarUser.get(player.getUniqueId()).setWebpw(args[0]); - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "§7Webpasswort gesetzt!"); + BungeeCore.send(player, Config.CHAT_PREFIX + "§7Webpasswort gesetzt!"); } } } diff --git a/src/de/steamwar/bungeecore/listeners/BanListener.java b/src/de/steamwar/bungeecore/listeners/BanListener.java index f28e24c..cc27522 100644 --- a/src/de/steamwar/bungeecore/listeners/BanListener.java +++ b/src/de/steamwar/bungeecore/listeners/BanListener.java @@ -1,6 +1,6 @@ package de.steamwar.bungeecore.listeners; -import de.steamwar.bungeecore.BungeeCore; +import de.steamwar.bungeecore.Config; import de.steamwar.bungeecore.sql.BannedUserIPs; import de.steamwar.bungeecore.sql.SteamwarUser; import net.md_5.bungee.api.ProxyServer; @@ -29,7 +29,7 @@ public class BanListener extends BasicListener { List ips = BannedUserIPs.get(event.getConnection().getAddress().getAddress().getHostAddress()); if(!ips.isEmpty()){ StringBuilder potentialBan = new StringBuilder(); - potentialBan.append(BungeeCore.CHAT_PREFIX); + potentialBan.append(Config.CHAT_PREFIX); potentialBan.append("§cMögliche Bannumgehung durch §r"); potentialBan.append(user.getUserName()); potentialBan.append("§c:"); @@ -37,7 +37,7 @@ public class BanListener extends BasicListener { for(BannedUserIPs banned : ips){ SteamwarUser bannedUser = SteamwarUser.get(banned.getUserID()); potentialBan.append(" §e"); - potentialBan.append(banned.getTimestamp().toLocalDateTime().format(BungeeCore.DATE_FORMAT)); + potentialBan.append(banned.getTimestamp().toLocalDateTime().format(Config.DATE_FORMAT)); potentialBan.append(" §c"); potentialBan.append(bannedUser.getUserName()); } diff --git a/src/de/steamwar/bungeecore/listeners/ChatListener.java b/src/de/steamwar/bungeecore/listeners/ChatListener.java index 036ff5a..f39f4cb 100644 --- a/src/de/steamwar/bungeecore/listeners/ChatListener.java +++ b/src/de/steamwar/bungeecore/listeners/ChatListener.java @@ -1,6 +1,7 @@ package de.steamwar.bungeecore.listeners; import de.steamwar.bungeecore.BungeeCore; +import de.steamwar.bungeecore.Config; import de.steamwar.bungeecore.Servertype; import de.steamwar.bungeecore.Subserver; import de.steamwar.bungeecore.commands.BauCommand; @@ -38,7 +39,7 @@ public class ChatListener extends BasicListener { String [] command = e.getMessage().split(" "); if(command[0].contains(":")){ if(e.getSender() instanceof ProxiedPlayer) - BungeeCore.send((ProxiedPlayer) e.getSender(), BungeeCore.CHAT_PREFIX + "§cUnbekannter Befehl."); + BungeeCore.send((ProxiedPlayer) e.getSender(), Config.CHAT_PREFIX + "§cUnbekannter Befehl."); e.setCancelled(true); return; } @@ -82,7 +83,7 @@ public class ChatListener extends BasicListener { lixfelAlert(sender); if(sender.getChatMode() != ProxiedPlayer.ChatMode.SHOWN){ - BungeeCore.send(sender, BungeeCore.CHAT_PREFIX + "§cUm Chatnachrichten versenden zu können, musst du auch welche empfangen!"); + BungeeCore.send(sender, Config.CHAT_PREFIX + "§cUm Chatnachrichten versenden zu können, musst du auch welche empfangen!"); e.setCancelled(true); return; } @@ -138,7 +139,7 @@ public class ChatListener extends BasicListener { ProxiedPlayer sender = (ProxiedPlayer) e.getSender(); BungeeCore.log(sender, e.getMessage()); if(command.length == 1){ - BungeeCore.send(sender, BungeeCore.CHAT_PREFIX + "§8/§e" + command[0].substring(1) + " §8[§7Nachricht§8]"); + BungeeCore.send(sender, Config.CHAT_PREFIX + "§8/§e" + command[0].substring(1) + " §8[§7Nachricht§8]"); e.setCancelled(true); return; } diff --git a/src/de/steamwar/bungeecore/listeners/ConnectionListener.java b/src/de/steamwar/bungeecore/listeners/ConnectionListener.java index b3c7353..3879313 100644 --- a/src/de/steamwar/bungeecore/listeners/ConnectionListener.java +++ b/src/de/steamwar/bungeecore/listeners/ConnectionListener.java @@ -1,6 +1,7 @@ package de.steamwar.bungeecore.listeners; import de.steamwar.bungeecore.BungeeCore; +import de.steamwar.bungeecore.Config; import de.steamwar.bungeecore.Servertype; import de.steamwar.bungeecore.Subserver; import de.steamwar.bungeecore.commands.ChallengeCommand; @@ -79,7 +80,7 @@ public class ConnectionListener extends BasicListener { if(subserver.getType() == Servertype.ARENA){ Iterator it = subserver.getServer().getPlayers().iterator(); if(it.hasNext()){ - TextComponent tc = new TextComponent(BungeeCore.CHAT_PREFIX + "§7Klicke §ehier§7, um §e" + subserver.getServer().getName() + " §7beizutreten"); + TextComponent tc = new TextComponent(Config.CHAT_PREFIX + "§7Klicke §ehier§7, um §e" + subserver.getServer().getName() + " §7beizutreten"); tc.setHoverEvent(new HoverEvent(HoverEvent.Action.SHOW_TEXT, new ComponentBuilder("§eArena beitreten").create())); tc.setClickEvent(new ClickEvent(ClickEvent.Action.RUN_COMMAND, "/join " + it.next().getName())); player.sendMessage(tc); @@ -88,7 +89,7 @@ public class ConnectionListener extends BasicListener { } if(player.getPendingConnection().getVersion() < 335 || player.getPendingConnection().getVersion() > 340){ - player.sendMessage(BungeeCore.CHAT_PREFIX + "§cWir empfehlen die Minecraft-Version 1.12.2"); + player.sendMessage(Config.CHAT_PREFIX + "§cWir empfehlen die Minecraft-Version 1.12.2"); } } @@ -109,7 +110,7 @@ public class ConnectionListener extends BasicListener { } } - ServerInfo kickTo = ProxyServer.getInstance().getServerInfo(BungeeCore.LOBBY_SERVER); + ServerInfo kickTo = ProxyServer.getInstance().getServerInfo(Config.LOBBY_SERVER); if (kickedFrom != null && kickedFrom.equals(kickTo)) { return; diff --git a/src/de/steamwar/bungeecore/listeners/PollSystem.java b/src/de/steamwar/bungeecore/listeners/PollSystem.java index c3f7c10..fa82088 100644 --- a/src/de/steamwar/bungeecore/listeners/PollSystem.java +++ b/src/de/steamwar/bungeecore/listeners/PollSystem.java @@ -1,6 +1,7 @@ package de.steamwar.bungeecore.listeners; import de.steamwar.bungeecore.BungeeCore; +import de.steamwar.bungeecore.Config; import de.steamwar.bungeecore.sql.PollAnswer; import de.steamwar.bungeecore.sql.SteamwarUser; import net.md_5.bungee.api.chat.ClickEvent; @@ -8,17 +9,9 @@ import net.md_5.bungee.api.connection.ProxiedPlayer; import net.md_5.bungee.api.event.PostLoginEvent; import net.md_5.bungee.event.EventHandler; -import java.util.List; - public class PollSystem extends BasicListener { - private static String question; - private static List answers; - - public static void init(String question, List answers){ - PollSystem.question = question; - PollSystem.answers = answers; - + public static void init(){ if(noCurrentPoll()) return; new PollSystem(); @@ -37,26 +30,18 @@ public class PollSystem extends BasicListener { } public static void sendPoll(ProxiedPlayer player){ - BungeeCore.send(player, BungeeCore.CHAT_PREFIX + "§e§lUmfrage"); + BungeeCore.send(player, Config.CHAT_PREFIX + "§e§lUmfrage"); BungeeCore.send(player, "§7Klicke die Antwort an, die dir gefällt!"); - BungeeCore.send(player, "§e" + question); + BungeeCore.send(player, "§e" + Config.POLL_QUESTION); - for(int i = 1; i <= answers.size(); i++){ - BungeeCore.send(player, "§7" + answers.get(i-1), - "§e" + answers.get(i-1) + " §ewählen", + for(int i = 1; i <= Config.POLL_ANSWERS.size(); i++){ + BungeeCore.send(player, "§7" + Config.POLL_ANSWERS.get(i-1), + "§e" + Config.POLL_ANSWERS.get(i-1) + " §ewählen", new ClickEvent(ClickEvent.Action.RUN_COMMAND, "/poll " + i)); } } public static boolean noCurrentPoll(){ - return question == null || question.equals(""); - } - - public static String getQuestion() { - return question; - } - - public static int answers(){ - return answers.size(); + return Config.POLL_QUESTION == null || Config.POLL_QUESTION.equals(""); } } diff --git a/src/de/steamwar/bungeecore/sql/SQL.java b/src/de/steamwar/bungeecore/sql/SQL.java index 8686b31..efdc251 100644 --- a/src/de/steamwar/bungeecore/sql/SQL.java +++ b/src/de/steamwar/bungeecore/sql/SQL.java @@ -1,6 +1,7 @@ package de.steamwar.bungeecore.sql; import de.steamwar.bungeecore.BungeeCore; +import de.steamwar.bungeecore.Config; import net.md_5.bungee.api.ProxyServer; import java.sql.*; @@ -11,19 +12,11 @@ public class SQL { private static Connection con; private static Connection webcon; - private static String url; - private static String weburl; - private static String user; - private static String password; - public static void connect(String url, String weburl, String user, String password) { - SQL.url = url; - SQL.weburl = weburl; - SQL.user = user; - SQL.password = password; + public static void connect() { try { - con = DriverManager.getConnection(url + "?autoreconnect=true", user, password); - webcon = DriverManager.getConnection(weburl + "?autoreconnect=true", user, password); + con = DriverManager.getConnection(Config.DB_URL + "?autoreconnect=true", Config.DB_USERNAME, Config.DB_PASSWORD); + webcon = DriverManager.getConnection(Config.DB_WEBURL + "?autoreconnect=true", Config.DB_USERNAME, Config.DB_PASSWORD); }catch (SQLException e) { ProxyServer.getInstance().stop(); throw new SecurityException("Could not start SQL-Exception", e); @@ -43,7 +36,7 @@ public class SQL { private static void sqlException(){ close(); - connect(url, weburl, user, password); + connect(); } static void update(String qry) { diff --git a/src/de/steamwar/bungeecore/sql/SteamwarUser.java b/src/de/steamwar/bungeecore/sql/SteamwarUser.java index 2b5a91a..185cd91 100644 --- a/src/de/steamwar/bungeecore/sql/SteamwarUser.java +++ b/src/de/steamwar/bungeecore/sql/SteamwarUser.java @@ -1,6 +1,7 @@ package de.steamwar.bungeecore.sql; import de.steamwar.bungeecore.BungeeCore; +import de.steamwar.bungeecore.Config; import net.md_5.bungee.api.ProxyServer; import net.md_5.bungee.api.chat.TextComponent; import net.md_5.bungee.api.connection.PendingConnection; @@ -158,19 +159,19 @@ public class SteamwarUser { public TextComponent banMessage(){ if (banTime.before(PERMA_BAN)) { - return BungeeCore.stringToText(BungeeCore.CHAT_PREFIX + "§cDu bist permanent gebannt. §r§lGrund§r: §c" + banReason); + return BungeeCore.stringToText(Config.CHAT_PREFIX + "§cDu bist permanent gebannt. §r§lGrund§r: §c" + banReason); } else { - return BungeeCore.stringToText(BungeeCore.CHAT_PREFIX + " Du bist bis zum " + - banTime.toLocalDateTime().format(BungeeCore.DATE_FORMAT) + " gebannt. §r§lGrund§r: §c" + banReason); + return BungeeCore.stringToText(Config.CHAT_PREFIX + " Du bist bis zum " + + banTime.toLocalDateTime().format(Config.DATE_FORMAT) + " gebannt. §r§lGrund§r: §c" + banReason); } } public TextComponent muteMessage(){ if (muteTime.before(PERMA_BAN)) { - return BungeeCore.stringToText(BungeeCore.CHAT_PREFIX + "§cDu bist permanent gemuted. §r§lGrund§r: §c" + muteReason); + return BungeeCore.stringToText(Config.CHAT_PREFIX + "§cDu bist permanent gemuted. §r§lGrund§r: §c" + muteReason); } else { - return BungeeCore.stringToText(BungeeCore.CHAT_PREFIX + " Du bist bis zum " + - muteTime.toLocalDateTime().format(BungeeCore.DATE_FORMAT) + " gemuted. §r§lGrund§r: §c" + muteReason); + return BungeeCore.stringToText(Config.CHAT_PREFIX + " Du bist bis zum " + + muteTime.toLocalDateTime().format(Config.DATE_FORMAT) + " gemuted. §r§lGrund§r: §c" + muteReason); } } diff --git a/src/de/steamwar/bungeecore/sql/TS3.java b/src/de/steamwar/bungeecore/sql/TS3.java new file mode 100644 index 0000000..871d65d --- /dev/null +++ b/src/de/steamwar/bungeecore/sql/TS3.java @@ -0,0 +1,56 @@ +package de.steamwar.bungeecore.sql; + +import java.sql.ResultSet; +import java.sql.SQLException; + +public class TS3 { + private final int userID; + private final String ts3ID; + + private TS3(int userID, String ts3ID){ + this.userID = userID; + this.ts3ID = ts3ID; + } + + private TS3(ResultSet rs) throws SQLException { + this(rs.getInt("UserID"), rs.getString("Ts3ID")); + } + + public static TS3 get(String ts3ID){ + return get(SQL.select("SELECT * FROM TS3 WHERE Ts3ID = " + SQL.disarmString(ts3ID))); + } + + public static TS3 get(int userID){ + return get(SQL.select("SELECT * FROM TS3 WHERE UserID = " + userID)); + } + + public static void create(int userID, String ts3ID){ + SQL.update("INSERT INTO TS3" + + " (UserID, Ts3ID)" + + " VALUES" + + " ('" + userID + "', '" + SQL.disarmString(ts3ID) + "')"); + } + + public int getUserID() { + return userID; + } + + public String getTs3ID() { + return ts3ID; + } + + public void free(){ + SQL.update("DELETE FROM TS3 WHERE UserID = " + userID); + } + + private static TS3 get(ResultSet rs){ + try { + if(!rs.next()) + return null; + + return new TS3(rs); + } catch(SQLException e){ + throw new SecurityException("Could not get TS3", e); + } + } +} diff --git a/src/de/steamwar/bungeecore/ts3/QueryListener.java b/src/de/steamwar/bungeecore/ts3/QueryListener.java new file mode 100644 index 0000000..d94c223 --- /dev/null +++ b/src/de/steamwar/bungeecore/ts3/QueryListener.java @@ -0,0 +1,94 @@ +package de.steamwar.bungeecore.ts3; + +import com.github.theholywaffle.teamspeak3.api.event.*; +import com.github.theholywaffle.teamspeak3.api.wrapper.Client; +import de.steamwar.bungeecore.BungeeCore; +import de.steamwar.bungeecore.Config; +import de.steamwar.bungeecore.sql.SteamwarUser; +import de.steamwar.bungeecore.sql.TS3; +import net.md_5.bungee.api.ProxyServer; +import net.md_5.bungee.api.chat.ClickEvent; +import net.md_5.bungee.api.connection.ProxiedPlayer; + +public class QueryListener implements TS3Listener { + + QueryListener(){} + + @Override + public void onTextMessage(TextMessageEvent e) { + if(TS3.get(e.getInvokerUniqueId()) == null){ + ProxiedPlayer player = ProxyServer.getInstance().getPlayer(e.getMessage()); + if(player == null){ + TS3Handler.getApi().sendPrivateMessage(e.getInvokerId(), "Das ist nicht dein Minecraft-Name, bitte versuch es doch noch einmal. Oder bist du einfach gerade nicht online?"); + return; + } + + SteamwarUser user = SteamwarUser.get(player.getUniqueId()); + TS3Handler.getToVerify().put(user.getId(), e.getInvokerUniqueId()); + TS3Handler.getApi().sendPrivateMessage(e.getInvokerId(), "Du kannst jetzt in Minecraft deinen Account bestätigen."); + Client client = TS3Handler.getApi().getClientInfo(e.getInvokerId()); + BungeeCore.send(player, Config.CHAT_PREFIX + "§7Ist das dein TS3-Account§8? §e" + client.getNickname()); + BungeeCore.send(player, "§aJa", "§8/§etsverify accept", new ClickEvent(ClickEvent.Action.RUN_COMMAND, "/verify accept")); + BungeeCore.send(player, "§cNein", "§8/§etsverify deny", new ClickEvent(ClickEvent.Action.RUN_COMMAND, "/verify deny")); + }else{ + TS3Handler.getApi().sendPrivateMessage(e.getInvokerId(), "Dein Minecraft-Account ist bereits einem TS3-Account zugeordnet. Solltest du z.B. deinen PC gewechselt haben, gib in Minecraft /tsverify free ein, um die alte Verbindung zu lösen."); + } + } + + @Override + public void onClientJoin(ClientJoinEvent e) { + if(TS3.get(e.getUniqueClientIdentifier()) == null){ + TS3Handler.getApi().sendPrivateMessage(e.getInvokerId(), "Hallo, schreibst du mir bitte deinen Ingame-Minecraftnamen?"); + } + } + + @Override + public void onClientLeave(ClientLeaveEvent e) { + //unused + } + + @Override + public void onServerEdit(ServerEditedEvent e) { + //unused + } + + @Override + public void onChannelEdit(ChannelEditedEvent e) { + //unused + } + + @Override + public void onChannelDescriptionChanged(ChannelDescriptionEditedEvent e) { + //unused + } + + @Override + public void onClientMoved(ClientMovedEvent e) { + //unused + } + + @Override + public void onChannelCreate(ChannelCreateEvent e) { + //unused + } + + @Override + public void onChannelDeleted(ChannelDeletedEvent e) { + //unused + } + + @Override + public void onChannelMoved(ChannelMovedEvent e) { + //unused + } + + @Override + public void onChannelPasswordChanged(ChannelPasswordChangedEvent e) { + //unused + } + + @Override + public void onPrivilegeKeyUsed(PrivilegeKeyUsedEvent e) { + //unused + } +} diff --git a/src/de/steamwar/bungeecore/ts3/TS3Handler.java b/src/de/steamwar/bungeecore/ts3/TS3Handler.java new file mode 100644 index 0000000..26a728a --- /dev/null +++ b/src/de/steamwar/bungeecore/ts3/TS3Handler.java @@ -0,0 +1,59 @@ +package de.steamwar.bungeecore.ts3; + +import com.github.theholywaffle.teamspeak3.TS3Api; +import com.github.theholywaffle.teamspeak3.TS3Config; +import com.github.theholywaffle.teamspeak3.TS3Query; +import com.github.theholywaffle.teamspeak3.api.exception.TS3CommandFailedException; +import com.github.theholywaffle.teamspeak3.api.wrapper.Client; +import de.steamwar.bungeecore.BungeeCore; +import de.steamwar.bungeecore.Config; +import de.steamwar.bungeecore.sql.SteamwarUser; +import de.steamwar.bungeecore.sql.TS3; +import net.md_5.bungee.api.connection.ProxiedPlayer; + +import java.util.HashMap; +import java.util.Map; + +public class TS3Handler { + + private static final Map toVerify = new HashMap<>(); + private static TS3Query query; + private static TS3Api api; + + public TS3Handler(){ + TS3Config cfg = new TS3Config(); + cfg.setHost("127.0.0.1"); + query = new TS3Query(cfg); + query.connect(); + api = query.getApi(); + api.login(Config.TS3_QUERY_USER, Config.TS3_QUERY_PASSWORD); + api.selectVirtualServerById(Config.TS3_QUERY_SERVERID); + api.setNickname(Config.TS3_QUERY_NICKNAME); + api.registerAllEvents(); + api.addTS3Listeners(new QueryListener()); + } + + public static Map getToVerify() { + return toVerify; + } + + public static void close(){ + query.exit(); + } + + static TS3Api getApi() { + return api; + } + + public static void createConnection(ProxiedPlayer player, SteamwarUser user, String ts3Id){ + TS3.create(user.getId(), ts3Id); + TS3Handler.getToVerify().remove(user.getId()); + BungeeCore.send(player, Config.CHAT_PREFIX + "§aDeine Teamspeak-Verknüpfung wurde erfolgreich hergestellt"); + try { + Client client = api.getClientByUId(ts3Id); + api.addClientToServerGroup(Config.TS3_QUERY_GROUPID, client.getDatabaseId()); + }catch(TS3CommandFailedException e){ + //ignored + } + } +}