diff --git a/Bukkit/src/main/java/dev/brighten/antivpn/bukkit/BukkitListener.java b/Bukkit/src/main/java/dev/brighten/antivpn/bukkit/BukkitListener.java index ae9adc1..2c4f997 100644 --- a/Bukkit/src/main/java/dev/brighten/antivpn/bukkit/BukkitListener.java +++ b/Bukkit/src/main/java/dev/brighten/antivpn/bukkit/BukkitListener.java @@ -82,15 +82,24 @@ public class BukkitListener extends VPNExecutor implements Listener { //We need to run on main thread or kicking and running commands will cause errors new BukkitRunnable() { public void run() { + //If the player is whitelisted, we don't want to kick them + if(AntiVPN.getInstance().getExecutor().isWhitelisted(event.getPlayer().getUniqueId())) { + AntiVPN.getInstance().getExecutor().log("UUID is whitelisted: %s", + event.getPlayer().getUniqueId().toString()); + return; + } + + //If the IP is whitelisted, we don't want to kick them + if(AntiVPN.getInstance().getExecutor().isWhitelisted(event.getPlayer().getAddress().getAddress() + .getHostAddress())) { + AntiVPN.getInstance().getExecutor().log("IP is whitelisted: %s", + event.getPlayer().getAddress().getAddress().getHostAddress()); + return; + } + // If the countryList() size is zero, no need to check. // Running country check first if(AntiVPN.getInstance().getVpnConfig().countryList().size() > 0 - && !(AntiVPN.getInstance().getExecutor() - .isWhitelisted(event.getPlayer().getUniqueId()) //Is exempt - //Or has a name that starts with a certain prefix. This is for Bedrock exempting. - || AntiVPN.getInstance().getExecutor().isWhitelisted(event.getPlayer() - .getAddress().getAddress() - .getHostAddress())) // This bit of code will decide whether or not to kick the player // If it contains the code and it is set to whitelist, it will not kick as they are equal // and vise versa. However, if the contains does not match the state, it will kick. diff --git a/Bungee/src/main/java/dev/brighten/antivpn/bungee/BungeeListener.java b/Bungee/src/main/java/dev/brighten/antivpn/bungee/BungeeListener.java index 66cb95c..4f05cc9 100644 --- a/Bungee/src/main/java/dev/brighten/antivpn/bungee/BungeeListener.java +++ b/Bungee/src/main/java/dev/brighten/antivpn/bungee/BungeeListener.java @@ -55,14 +55,22 @@ public class BungeeListener extends VPNExecutor implements Listener { checkIp(event.getPlayer().getAddress().getAddress().getHostAddress(), AntiVPN.getInstance().getVpnConfig().cachedResults(), result -> { if(result.isSuccess()) { - // If the countryList() size is zero, no need to check. - // Running country check first - AntiVPN.getInstance().getExecutor().log("Checking UUID for whitelist: %s", event.getPlayer().getUniqueId().toString()); + //If the player is whitelisted, we don't want to kick them + if(AntiVPN.getInstance().getExecutor().isWhitelisted(event.getPlayer().getUniqueId())) { + AntiVPN.getInstance().getExecutor().log("UUID is whitelisted: %s", + event.getPlayer().getUniqueId().toString()); + return; + } + + //If the IP is whitelisted, we don't want to kick them + if(AntiVPN.getInstance().getExecutor().isWhitelisted(event.getPlayer().getAddress().getAddress() + .getHostAddress())) { + AntiVPN.getInstance().getExecutor().log("IP is whitelisted: %s", + event.getPlayer().getAddress().getAddress().getHostAddress()); + return; + } + if(AntiVPN.getInstance().getVpnConfig().countryList().size() > 0 - && !(AntiVPN.getInstance().getExecutor().isWhitelisted(event.getPlayer().getUniqueId()) //Is exempt - //Or has a name that starts with a certain prefix. This is for Bedrock exempting. - || AntiVPN.getInstance().getExecutor().isWhitelisted(event.getPlayer().getAddress().getAddress() - .getHostAddress())) // This bit of code will decide whether or not to kick the player // If it contains the code and it is set to whitelist, it will not kick as they are equal // and vise versa. However, if the contains does not match the state, it will kick. diff --git a/Common/src/main/resources/config.yml b/Common/src/main/resources/config.yml index 134acb4..6098586 100644 --- a/Common/src/main/resources/config.yml +++ b/Common/src/main/resources/config.yml @@ -15,8 +15,8 @@ prefixWhitelists: [] # Configure your database here. database: # Enable to cache queries and save alerts state beyond restarts - enabled: false - useCredentials: true + enabled: true + useCredentials: false #Options Mongo, MySQL, or H2 type: H2 # The database name you would like to use