diff --git a/src/de/steamwar/bungeecore/PlayerListener.java b/src/de/steamwar/bungeecore/PlayerListener.java index 0a54786..78befe8 100644 --- a/src/de/steamwar/bungeecore/PlayerListener.java +++ b/src/de/steamwar/bungeecore/PlayerListener.java @@ -41,7 +41,7 @@ public class PlayerListener implements Listener { } List ips = BannedUserIPs.get(event.getConnection().getAddress().getAddress().getHostAddress()); - if(ips.size() > 0){ + if(!ips.isEmpty()){ StringBuilder potentialBan = new StringBuilder(); potentialBan.append(BungeeCore.ChatPrefix); potentialBan.append("§cMögliche Bannumgehung durch §r"); @@ -72,7 +72,7 @@ public class PlayerListener implements Listener { @EventHandler public void onPostLogin(PostLoginEvent event) { ProxiedPlayer player = event.getPlayer(); - WarkingUser user = new WarkingUser(player); + WarkingUser user = WarkingUser.get(player.getUniqueId()); player.removeGroups("Admin", "team"); switch(user.getUserGroup()){ case "Admin": diff --git a/src/de/steamwar/bungeecore/commands/WebpwCommand.java b/src/de/steamwar/bungeecore/commands/WebpwCommand.java index 70f5023..6a5e0d6 100644 --- a/src/de/steamwar/bungeecore/commands/WebpwCommand.java +++ b/src/de/steamwar/bungeecore/commands/WebpwCommand.java @@ -27,7 +27,7 @@ public class WebpwCommand extends Command { return; } - sql.setWebpw(new WarkingUser(player), args[0]); + sql.setWebpw(WarkingUser.get(player.getUniqueId()), args[0]); player.sendMessage(BungeeCore.ChatPrefix + "Webpasswort gesetzt!"); } } diff --git a/src/de/steamwar/bungeecore/sql/WarkingUser.java b/src/de/steamwar/bungeecore/sql/WarkingUser.java index 81c6486..a4f363e 100644 --- a/src/de/steamwar/bungeecore/sql/WarkingUser.java +++ b/src/de/steamwar/bungeecore/sql/WarkingUser.java @@ -1,7 +1,6 @@ package de.steamwar.bungeecore.sql; import net.md_5.bungee.api.connection.PendingConnection; -import net.md_5.bungee.api.connection.ProxiedPlayer; import java.sql.ResultSet; import java.sql.SQLException; @@ -24,7 +23,7 @@ public class WarkingUser { public static Timestamp PermaBan = Timestamp.from(Instant.ofEpochSecond(946684800)); public WarkingUser(int id){ - init(sql.select("SELECT * FROM UserData WHERE id = '" + id + "'")); + init(sql.select("SELECT * FROM UserData WHERE id = " + id)); } public WarkingUser(UUID UUID){ @@ -41,6 +40,10 @@ public class WarkingUser { if(dbplayer.next()){ dbplayer.beforeFirst(); init(dbplayer); + if(!dbplayer.getString("UserName").equals(connection.getName())){ + UserName = connection.getName(); + sql.update("UPDATE UserData SET UserName = '" + UserName + "' WHERE id = " + id); + } }else{ UUID = connection.getUniqueId(); UserName = connection.getName(); @@ -55,26 +58,6 @@ public class WarkingUser { } } - public WarkingUser(ProxiedPlayer player){ - ResultSet dbplayer = sql.select("SELECT * FROM UserData WHERE UUID = '" + player.getUniqueId().toString() + "'"); - try { - if(dbplayer.next()){ - dbplayer.beforeFirst(); - init(dbplayer); - }else{ - UUID = player.getUniqueId(); - UserName = player.getName(); - UserGroup = "Member"; - sql.update("INSERT INTO UserData (UUID, UserName, UserGroup) VALUES ('" + getUUID().toString() + "', '" + getUserName() + "', '" + getUserGroup() + "')"); - - dbplayer = sql.select("SELECT * FROM UserData WHERE UUID = '" + getUUID().toString() + "'"); - init(dbplayer); - } - } catch (SQLException e) { - e.printStackTrace(); - } - } - public static WarkingUser get(String userName){ userName = sql.disarmString(userName); for(WarkingUser user : allUsers) @@ -136,13 +119,13 @@ public class WarkingUser { sql.update("INSERT INTO BannedUserIPs\n" + " (UserID, Timestamp, IP)\n" + "VALUES\n" + - " (" + getId() + ", NOW(), '" + ip + "')\n" + + " (" + id + ", NOW(), '" + ip + "')\n" + "ON DUPLICATE KEY UPDATE\n" + " Timestamp=NOW()"); } public void banPlayer(String ip, Timestamp time, String banReason){ - sql.update("UPDATE UserData SET BanTime = '" + time.toString() + "', BanReason = '" + banReason + "' WHERE UUID = '" + getUUID().toString() + "'"); + sql.update("UPDATE UserData SET BanTime = '" + time.toString() + "', BanReason = '" + banReason + "' WHERE id = " + id); if(ip != null) updateBanIP(ip); }