61 lines
2.8 KiB
Java
61 lines
2.8 KiB
Java
package net.t2code.opsecurity.API;
|
|
|
|
import net.t2code.opsecurity.check.OpCheck;
|
|
import net.t2code.opsecurity.check.PermissionCheck;
|
|
import net.t2code.opsecurity.config.opWhitelist.OPWhitelist;
|
|
import net.t2code.opsecurity.config.permissionWhitelist.PermissionWhitelist;
|
|
import net.t2code.opsecurity.objects.PlayerCache;
|
|
import net.t2code.opsecurity.objects.PlayerObject;
|
|
import net.t2code.t2codelib.SPIGOT.api.debug.T2Cdebug;
|
|
import org.bukkit.entity.Player;
|
|
|
|
import java.util.ArrayList;
|
|
import java.util.List;
|
|
import java.util.Map;
|
|
|
|
public class T2COpSecAPI {
|
|
public static boolean checkOPWhiteList(Player player) {
|
|
if (!OPWhitelist.enable.valueBoolean) return true;
|
|
String debug = T2Cdebug.debugCode();
|
|
return OpCheck.opWhitelist(player,debug);
|
|
}
|
|
|
|
public static boolean checkPermissionWhiteList(Player player, String debug) {
|
|
if (!PermissionWhitelist.enable.valueBoolean) return true;
|
|
return PermissionCheck.permWhitelist(player, debug);
|
|
}
|
|
|
|
public static T2COpSecAPIPlayerStatus detailCheckOPWhiteList(Player player) {
|
|
if (!OPWhitelist.enable.valueBoolean) return T2COpSecAPIPlayerStatus.playerOnOpWhitelist;
|
|
List<String> nameList = new ArrayList<>();
|
|
List<String> uuidList = new ArrayList<>();
|
|
for (Map.Entry<String, PlayerObject> playerObject : PlayerCache.getOpHashMap().entrySet()) {
|
|
nameList.add(playerObject.getValue().playerName);
|
|
uuidList.add(playerObject.getValue().uuid);
|
|
}
|
|
if (!nameList.contains(player.getName())) {
|
|
return T2COpSecAPIPlayerStatus.playerNameNotOnTheOpWhitelist;
|
|
}
|
|
if (!uuidList.contains(player.getUniqueId().toString().replace("-", ""))) {
|
|
return T2COpSecAPIPlayerStatus.playerUuidNotOnTheOpWhitelist;
|
|
}
|
|
return T2COpSecAPIPlayerStatus.playerOnOpWhitelist;
|
|
}
|
|
public static T2COpSecAPIPlayerStatus detailCheckPermissionWhiteList(Player player) {
|
|
if (!PermissionWhitelist.enable.valueBoolean) return T2COpSecAPIPlayerStatus.playerOnPermissionWhitelist;
|
|
List<String> nameList = new ArrayList<>();
|
|
List<String> uuidList = new ArrayList<>();
|
|
for (Map.Entry<String, PlayerObject> playerObject : PlayerCache.getPermissionHashMap().entrySet()) {
|
|
nameList.add(playerObject.getValue().playerName);
|
|
uuidList.add(playerObject.getValue().uuid);
|
|
}
|
|
if (!nameList.contains(player.getName())) {
|
|
return T2COpSecAPIPlayerStatus.playerNameNotOnThePermissionWhitelist;
|
|
}
|
|
if (!uuidList.contains(player.getUniqueId().toString().replace("-", ""))) {
|
|
return T2COpSecAPIPlayerStatus.playerUuidNotOnThePermissionWhitelist;
|
|
}
|
|
return T2COpSecAPIPlayerStatus.playerOnPermissionWhitelist;
|
|
}
|
|
}
|