Re-did formatting, removed some unused code and rewrote some excessive if statements

This commit is contained in:
Sti-jn 2021-04-04 19:24:43 +02:00
parent e9b13e085e
commit b235928089
14 changed files with 724 additions and 769 deletions

View File

@ -3,9 +3,11 @@ package com.liteflags.auth;
import com.liteflags.LiteFlags; import com.liteflags.LiteFlags;
import com.liteflags.data.maps.MapCache; import com.liteflags.data.maps.MapCache;
import com.liteflags.util.Utilities; import com.liteflags.util.Utilities;
import java.util.HashMap; import java.util.HashMap;
import java.util.Map; import java.util.Map;
import java.util.UUID; import java.util.UUID;
import org.bukkit.Bukkit; import org.bukkit.Bukkit;
import org.bukkit.entity.Player; import org.bukkit.entity.Player;

View File

@ -3,8 +3,10 @@ package com.liteflags.auth;
import com.liteflags.LiteFlags; import com.liteflags.LiteFlags;
import com.liteflags.data.maps.MapCache; import com.liteflags.data.maps.MapCache;
import com.liteflags.util.Utilities; import com.liteflags.util.Utilities;
import java.util.Random; import java.util.Random;
import java.util.UUID; import java.util.UUID;
import org.bukkit.Bukkit; import org.bukkit.Bukkit;
import org.bukkit.entity.Player; import org.bukkit.entity.Player;

View File

@ -1,4 +0,0 @@
package com.liteflags.commands;
public class AuthCMD {
}

View File

@ -5,12 +5,14 @@ import com.liteflags.data.database.Database;
import com.liteflags.data.database.Methods; import com.liteflags.data.database.Methods;
import com.liteflags.data.maps.MapCache; import com.liteflags.data.maps.MapCache;
import com.liteflags.util.Utilities; import com.liteflags.util.Utilities;
import java.sql.ResultSet; import java.sql.ResultSet;
import java.sql.SQLException; import java.sql.SQLException;
import java.util.Arrays; import java.util.Arrays;
import java.util.Iterator; import java.util.Iterator;
import java.util.List; import java.util.List;
import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeUnit;
import net.md_5.bungee.api.chat.ClickEvent; import net.md_5.bungee.api.chat.ClickEvent;
import net.md_5.bungee.api.chat.ComponentBuilder; import net.md_5.bungee.api.chat.ComponentBuilder;
import net.md_5.bungee.api.chat.HoverEvent; import net.md_5.bungee.api.chat.HoverEvent;
@ -148,9 +150,7 @@ public class FlagCMD implements CommandExecutor {
} else { } else {
sender.sendMessage(Utilities.format(LiteFlags.getInstance().getConfig().getString("Messages.NoPermission"))); sender.sendMessage(Utilities.format(LiteFlags.getInstance().getConfig().getString("Messages.NoPermission")));
} }
} } else if (cmd.getName().equalsIgnoreCase("flaglist")) {
if (cmd.getName().equalsIgnoreCase("flaglist")) {
if (sender.hasPermission("liteflags.staff")) { if (sender.hasPermission("liteflags.staff")) {
if (args.length == 0) { if (args.length == 0) {
if (MapCache.activeFlags.size() > 0) { if (MapCache.activeFlags.size() > 0) {

View File

@ -1,4 +0,0 @@
package com.liteflags.data;
public class Data {
}

View File

@ -1,6 +1,7 @@
package com.liteflags.data.database; package com.liteflags.data.database;
import com.liteflags.LiteFlags; import com.liteflags.LiteFlags;
import java.sql.PreparedStatement; import java.sql.PreparedStatement;
import java.sql.ResultSet; import java.sql.ResultSet;
import java.sql.SQLException; import java.sql.SQLException;

View File

@ -1,6 +1,7 @@
package com.liteflags.data.database; package com.liteflags.data.database;
import com.liteflags.LiteFlags; import com.liteflags.LiteFlags;
import java.sql.Connection; import java.sql.Connection;
import java.sql.DriverManager; import java.sql.DriverManager;
import java.sql.SQLException; import java.sql.SQLException;

View File

@ -2,9 +2,11 @@ package com.liteflags.data.database;
import com.liteflags.LiteFlags; import com.liteflags.LiteFlags;
import com.liteflags.util.Utilities; import com.liteflags.util.Utilities;
import java.sql.ResultSet; import java.sql.ResultSet;
import java.sql.SQLException; import java.sql.SQLException;
import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeUnit;
import org.bukkit.OfflinePlayer; import org.bukkit.OfflinePlayer;
public class Methods { public class Methods {
@ -21,11 +23,8 @@ public class Methods {
long expireTime = TimeUnit.SECONDS.toMinutes((long) flag.getInt("expire_time")); long expireTime = TimeUnit.SECONDS.toMinutes((long) flag.getInt("expire_time"));
long currentTime = TimeUnit.SECONDS.toMinutes(System.currentTimeMillis() / 1000L); long currentTime = TimeUnit.SECONDS.toMinutes(System.currentTimeMillis() / 1000L);
int convertedExpireTime = (int) expireTime - (int) currentTime; int convertedExpireTime = (int) expireTime - (int) currentTime;
if (convertedExpireTime >= 0) {
return true;
}
if (expireTime == 0L) { if (convertedExpireTime >= 0 || expireTime == 0L) {
return true; return true;
} }
} }
@ -48,19 +47,10 @@ public class Methods {
long expireTime = TimeUnit.SECONDS.toMinutes((long) flag.getInt("expire_time")); long expireTime = TimeUnit.SECONDS.toMinutes((long) flag.getInt("expire_time"));
long currentTime = TimeUnit.SECONDS.toMinutes(System.currentTimeMillis() / 1000L); long currentTime = TimeUnit.SECONDS.toMinutes(System.currentTimeMillis() / 1000L);
int convertedExpireTime = (int) expireTime - (int) currentTime; int convertedExpireTime = (int) expireTime - (int) currentTime;
String s;
if (convertedExpireTime >= 0) { if (convertedExpireTime >= 0 || expireTime == 0L) {
++i; ++i;
s = flag.getString("flagged_by"); if (flag.getString("flagged_by").equalsIgnoreCase("console")) {
if (s.equalsIgnoreCase("console")) {
++consoleFlags;
} else {
++staffFlags;
}
} else if (expireTime == 0L) {
++i;
s = flag.getString("flagged_by");
if (s.equalsIgnoreCase("console")) {
++consoleFlags; ++consoleFlags;
} else { } else {
++staffFlags; ++staffFlags;
@ -84,6 +74,7 @@ public class Methods {
long expireTime = TimeUnit.SECONDS.toMinutes((long) flag.getInt("expire_time")); long expireTime = TimeUnit.SECONDS.toMinutes((long) flag.getInt("expire_time"));
long currentTime = TimeUnit.SECONDS.toMinutes(System.currentTimeMillis() / 1000L); long currentTime = TimeUnit.SECONDS.toMinutes(System.currentTimeMillis() / 1000L);
int convertedExpireTime = (int) expireTime - (int) currentTime; int convertedExpireTime = (int) expireTime - (int) currentTime;
if (convertedExpireTime >= 0) { if (convertedExpireTime >= 0) {
String s = flag.getString("flagged_by"); String s = flag.getString("flagged_by");
if (s.equalsIgnoreCase("console")) { if (s.equalsIgnoreCase("console")) {
@ -91,22 +82,20 @@ public class Methods {
} }
} }
} }
} catch (SQLException var9) { } catch (SQLException e) {
var9.printStackTrace(); e.printStackTrace();
} }
return i; return i;
} }
public static void getPlayerFlags(OfflinePlayer targetPlayer) {
}
public static int getRandomIntegerBetweenRange(int min, int max) { public static int getRandomIntegerBetweenRange(int min, int max) {
int x = (int) (Math.random() * (double) (max - min + 1)) + min; int x = (int) (Math.random() * (double) (max - min + 1)) + min;
return x; return x;
} }
static { static {
playerFlagsHeader = Utilities.format(LiteFlags.getInstance().getConfig().getString("Messages.PlayerFlagsHeader").replace("%limit%", flagListLimit)); playerFlagsHeader = Utilities.format(LiteFlags.getInstance().getConfig().getString("Messages.PlayerFlagsHeader")
.replace("%limit%", flagListLimit));
} }
} }

View File

@ -5,8 +5,10 @@ import com.liteflags.data.database.Database;
import com.liteflags.data.database.Methods; import com.liteflags.data.database.Methods;
import com.liteflags.data.maps.MapCache; import com.liteflags.data.maps.MapCache;
import com.liteflags.util.Utilities; import com.liteflags.util.Utilities;
import java.util.Random; import java.util.Random;
import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeUnit;
import org.bukkit.Bukkit; import org.bukkit.Bukkit;
import org.bukkit.entity.Player; import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler; import org.bukkit.event.EventHandler;
@ -15,44 +17,54 @@ import org.bukkit.event.player.AsyncPlayerChatEvent;
import org.bukkit.scheduler.BukkitRunnable; import org.bukkit.scheduler.BukkitRunnable;
public class ChatEvent implements Listener { public class ChatEvent implements Listener {
private LiteFlags flags;
public ChatEvent(LiteFlags flags) {
this.flags = flags;
}
@EventHandler @EventHandler
public void onPlayerChat(AsyncPlayerChatEvent e) { public void onPlayerChat(AsyncPlayerChatEvent e) {
final Player player = e.getPlayer(); final Player player = e.getPlayer();
if (MapCache.reauthedPlayers.containsKey(player.getUniqueId().toString())) {
if (!MapCache.reauthedPlayers.containsKey(player.getUniqueId().toString())) {
return;
}
String value = MapCache.reauthedPlayers.get(player.getUniqueId().toString()); String value = MapCache.reauthedPlayers.get(player.getUniqueId().toString());
if (e.getMessage().equals(value)) { if (e.getMessage().equals(value)) {
e.setCancelled(true); e.setCancelled(true);
player.sendMessage(Utilities.format(LiteFlags.getInstance().getConfig().getString("Messages.Authenticate_Success"))); player.sendMessage(Utilities.format(LiteFlags.getInstance().getConfig().getString("Messages.Authenticate_Success")));
long time = TimeUnit.SECONDS.toMinutes(System.currentTimeMillis() / 1000L) + 5L;
final int min = LiteFlags.getInstance().getConfig().getInt("RandomReauth.MinNumber"); final int min = LiteFlags.getInstance().getConfig().getInt("RandomReauth.MinNumber");
final int max = LiteFlags.getInstance().getConfig().getInt("RandomReauth.MaxNumber"); final int max = LiteFlags.getInstance().getConfig().getInt("RandomReauth.MaxNumber");
new Random();
final String timeAmount = LiteFlags.getInstance().getConfig().getString("RandomReauth.TimeFormat"); final String timeAmount = LiteFlags.getInstance().getConfig().getString("RandomReauth.TimeFormat");
(new BukkitRunnable() {
new BukkitRunnable() {
public void run() { public void run() {
Bukkit.getServer().dispatchCommand(Bukkit.getConsoleSender(), LiteFlags.getInstance().getConfig().getString("Commands.TempAuthSuccess").replace("%player%", player.getName()).replace("%permission%", "liteflags.authentication.success").replace("%expiretime%", Methods.getRandomIntegerBetweenRange(min, max) + timeAmount.substring(0, 1).toLowerCase())); Bukkit.getServer().dispatchCommand(Bukkit.getConsoleSender(),
LiteFlags.getInstance().getConfig().getString("Commands.TempAuthSuccess")
.replace("%player%", player.getName())
.replace("%permission%", "liteflags.authentication.success")
.replace("%expiretime%",
Methods.getRandomIntegerBetweenRange(min, max)
+ timeAmount.substring(0, 1).toLowerCase()));
} }
}).runTask(LiteFlags.getInstance()); }.runTask(LiteFlags.getInstance());
MapCache.reauthedPlayers.remove(player.getUniqueId().toString()); MapCache.reauthedPlayers.remove(player.getUniqueId().toString());
if (Database.inPlayerCache(player.getUniqueId())) { if (Database.inPlayerCache(player.getUniqueId())) {
long currentTime = TimeUnit.MILLISECONDS.toMinutes(System.currentTimeMillis()); long currentTime = TimeUnit.MILLISECONDS.toMinutes(System.currentTimeMillis());
int expireTime = 10080; int expireTime = 10080;
int conTime = (int) currentTime + expireTime; int conTime = (int) currentTime + expireTime;
Database.addFlag(player.getUniqueId(), (long) ((int) TimeUnit.MINUTES.toSeconds((long) conTime)), "Possible Hacked Client - Logged out before authenticating.", "Console", "7 Days"); Database.addFlag(player.getUniqueId(), (long) ((int) TimeUnit.MINUTES.toSeconds((long) conTime)), "Possible Hacked Client - Logged out before authenticating.", "Console", "7 Days");
Database.removePlayerCache(player.getUniqueId()); Database.removePlayerCache(player.getUniqueId());
} }
} else { } else {
e.setCancelled(true); e.setCancelled(true);
player.sendMessage(Utilities.format(LiteFlags.getInstance().getConfig().getString("Messages.Authenticate_Failed").replace("%code%", (CharSequence) MapCache.reauthedPlayers.get(player.getUniqueId().toString())))); player.sendMessage(Utilities.format(LiteFlags.getInstance().getConfig().getString("Messages.Authenticate_Failed").replace("%code%", (CharSequence) MapCache.reauthedPlayers.get(player.getUniqueId().toString()))));
LiteFlags.getInstance().getLogger().info(player.getName() + " tried talking while authenticating: " + e.getMessage()); LiteFlags.getInstance().getLogger().info(player.getName() + " tried talking while authenticating: " + e.getMessage());
} }
} }
}
} }

View File

@ -5,7 +5,7 @@ import com.liteflags.auth.Authentication;
import com.liteflags.data.database.Methods; import com.liteflags.data.database.Methods;
import com.liteflags.data.maps.MapCache; import com.liteflags.data.maps.MapCache;
import com.liteflags.util.Utilities; import com.liteflags.util.Utilities;
import java.util.Iterator;
import org.bukkit.Bukkit; import org.bukkit.Bukkit;
import org.bukkit.entity.Player; import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler; import org.bukkit.event.EventHandler;
@ -13,11 +13,6 @@ import org.bukkit.event.Listener;
import org.bukkit.event.player.PlayerJoinEvent; import org.bukkit.event.player.PlayerJoinEvent;
public class LoginEvent implements Listener { public class LoginEvent implements Listener {
private LiteFlags flags;
public LoginEvent(LiteFlags flags) {
this.flags = flags;
}
@EventHandler @EventHandler
public void onPlayerLogin(PlayerJoinEvent e) { public void onPlayerLogin(PlayerJoinEvent e) {
@ -26,18 +21,17 @@ public class LoginEvent implements Listener {
Authentication.checkAuthStatus(player.getUniqueId()); Authentication.checkAuthStatus(player.getUniqueId());
} }
if (Methods.hasActiveFlags(player)) { if (!Methods.hasActiveFlags(player)) {
return;
}
MapCache.activeFlags.add(player.getName()); MapCache.activeFlags.add(player.getName());
Iterator var3 = Bukkit.getOnlinePlayers().iterator();
while(var3.hasNext()) { for (Player onlinePlayer : Bukkit.getOnlinePlayers()) {
Player staff = (Player)var3.next(); if (onlinePlayer.hasPermission("liteflags.alertflags") && !LiteFlags.getInstance().getConfig().getString("Messages.AlertActiveFlags").equalsIgnoreCase("disablethis")) {
if (staff.hasPermission("liteflags.alertflags") && !LiteFlags.getInstance().getConfig().getString("Messages.AlertActiveFlags").equalsIgnoreCase("disablethis")) {
int activeTotalFlags = Methods.getTotalActiveFlags(player); int activeTotalFlags = Methods.getTotalActiveFlags(player);
Utilities.sendStaffHoverMessage(player, staff, Utilities.format(LiteFlags.getInstance().getConfig().getString("Messages.AlertActiveFlags").replace("%player%", player.getName()).replace("%totalactflags%", "" + activeTotalFlags).replace("%consoleFlags%", "" + Methods.consoleFlags).replace("%staffFlags%", "" + Methods.staffFlags))); Utilities.sendStaffHoverMessage(player, onlinePlayer, Utilities.format(LiteFlags.getInstance().getConfig().getString("Messages.AlertActiveFlags").replace("%player%", player.getName()).replace("%totalactflags%", "" + activeTotalFlags).replace("%consoleFlags%", "" + Methods.consoleFlags).replace("%staffFlags%", "" + Methods.staffFlags)));
} }
} }
} }
}
} }

View File

@ -19,6 +19,7 @@ public class LogoutEvent implements Listener {
@EventHandler @EventHandler
public void onPlayerLogout(PlayerQuitEvent e) { public void onPlayerLogout(PlayerQuitEvent e) {
Player player = e.getPlayer(); Player player = e.getPlayer();
if (AuthTimer.taskID.containsKey(player.getUniqueId())) { if (AuthTimer.taskID.containsKey(player.getUniqueId())) {
AuthTimer.endTask(player); AuthTimer.endTask(player);
} }
@ -28,9 +29,7 @@ public class LogoutEvent implements Listener {
MapCache.reauthedPlayers.remove(player.getUniqueId().toString()); MapCache.reauthedPlayers.remove(player.getUniqueId().toString());
} }
if (MapCache.activeFlags.contains(player.getName())) {
MapCache.activeFlags.remove(player.getName()); MapCache.activeFlags.remove(player.getName());
}
} }
} }

View File

@ -1,6 +1,5 @@
package com.liteflags.events; package com.liteflags.events;
import com.liteflags.LiteFlags;
import com.liteflags.data.maps.MapCache; import com.liteflags.data.maps.MapCache;
import org.bukkit.entity.Player; import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler; import org.bukkit.event.EventHandler;
@ -8,20 +7,9 @@ import org.bukkit.event.Listener;
import org.bukkit.event.player.PlayerMoveEvent; import org.bukkit.event.player.PlayerMoveEvent;
public class MoveEvent implements Listener { public class MoveEvent implements Listener {
private LiteFlags flags;
public MoveEvent(LiteFlags flags) {
this.flags = flags;
}
@EventHandler @EventHandler
public void onPlayerMove(PlayerMoveEvent e) { public void onPlayerMove(PlayerMoveEvent e) {
Player player = e.getPlayer(); Player player = e.getPlayer();
if (MapCache.reauthedPlayers.containsKey(player.getUniqueId().toString())) { e.setCancelled(MapCache.reauthedPlayers.containsKey(player.getUniqueId().toString()));
e.setCancelled(true);
} else {
e.setCancelled(false);
}
} }
} }

View File

@ -1,6 +1,7 @@
package com.liteflags.util; package com.liteflags.util;
import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeUnit;
import net.md_5.bungee.api.ChatColor; import net.md_5.bungee.api.ChatColor;
import net.md_5.bungee.api.chat.ClickEvent; import net.md_5.bungee.api.chat.ClickEvent;
import net.md_5.bungee.api.chat.ComponentBuilder; import net.md_5.bungee.api.chat.ComponentBuilder;
@ -16,50 +17,24 @@ public class Utilities {
int days = (int) TimeUnit.MINUTES.toDays(time); int days = (int) TimeUnit.MINUTES.toDays(time);
int hours = (int) (TimeUnit.MINUTES.toHours(time) - TimeUnit.DAYS.toHours(days)); int hours = (int) (TimeUnit.MINUTES.toHours(time) - TimeUnit.DAYS.toHours(days));
int minutes = (int) (TimeUnit.MINUTES.toMinutes(time) - TimeUnit.HOURS.toMinutes(hours) - TimeUnit.DAYS.toMinutes(days)); int minutes = (int) (TimeUnit.MINUTES.toMinutes(time) - TimeUnit.HOURS.toMinutes(hours) - TimeUnit.DAYS.toMinutes(days));
String d = days + " day";
String h = hours + " hour"; String timeString = formatTime(days, " day");
String m = minutes + " minute"; timeString += (timeString.length() == 0 ? "" : ", ") + formatTime(hours, " hour");
String c = ", "; timeString += (timeString.length() == 0 ? "" : ", ") + formatTime(minutes, " minute");
if (days == 0) {
if (hours == 0) { if (timeString.length() == 0) timeString = "0 minutes";
return minutes == 1 ? m : m + "s";
} else if (hours == 1) { return timeString;
if (minutes == 1) {
return h + c + m;
} else {
return minutes == 0 ? h : h + c + m + "s";
} }
} else if (minutes == 1) {
return h + "s" + c + m; private static String formatTime(int value, String s) {
} else { switch (value) {
return minutes == 0 ? h + "s" : h + "s" + c + m + "s"; case 0:
} return "";
} else if (days == 1) { case 1:
if (hours == 1) { return value + s;
if (minutes == 1) { default:
return d + c + h + c + m; return value + s + "s";
} else {
return minutes == 0 ? d + c + h : d + c + h + c + m + "s";
}
} else if (minutes == 1) {
return hours == 0 ? d + c + m : d + c + h + "s" + c + m;
} else if (minutes == 0) {
return hours == 0 ? d : d + c + h + "s";
} else {
return hours == 0 ? d + c + m + "s" : d + c + h + "s" + c + m + "s";
}
} else if (hours == 1) {
if (minutes == 1) {
return d + "s" + c + h + c + m;
} else {
return minutes == 0 ? d + "s" + c + h : d + "s" + c + h + c + m + "s";
}
} else if (minutes == 1) {
return hours == 0 ? d + "s" + c + m : d + "s" + c + h + "s" + c + m;
} else if (minutes == 0) {
return hours == 0 ? d + "s" : d + "s" + c + h + "s";
} else {
return hours == 0 ? d + "s" + c + m + "s" : d + "s" + c + h + "s" + c + m + "s";
} }
} }