xWhitelist API
##Introducción
La xWhitelistAPI proporciona métodos estáticos para interactuar programáticamente con xWhitelist. Puedes gestionar la whitelist, la whitelist de mantenimiento y verificar el estado del plugin directamente desde tu código sin crear una instancia.
##Instalación
Primero, agrega el repositorio y la dependencia de xWhitelist.
<repositories>
<repository>
<id>jitpack.io</id>
<url>https://jitpack.io</url>
</repository>
</repositories>
<dependency>
<groupId>com.github.xDrygo</groupId>
<artifactId>xWhitelist</artifactId>
<version>1.3.1</version>
<scope>provided</scope>
</dependency>Después de agregar la dependencia, añade xWhitelist como dependencia en tu plugin.
name: MyPlugin
main: com.example.MyPlugin.MyPlugin
version: 1.0
depend: # depend si la API es necesaria, soft-depend si es opcional.
- xWhitelist##Métodos de xWhitelistAPI
###Métodos Generales de Whitelist
Haz clic para expandir
####
Devuelve si la whitelist principal está activada.boolean isWhitelistActive()
if (XWhitelistAPI.isWhitelistActive()) {
Bukkit.getLogger().info("¡La whitelist está activada!");
}####
Cambia el estado de la whitelist principal (activada/desactivada).void toggleWhitelist()
XWhitelistAPI.toggleWhitelist(); // Activa/desactiva la whitelist####
Devuelve una lista de jugadores actualmente en la whitelist del archivo local.List<String> getFileWhitelist()
public void printFileWhitelist() {
List<String> players = XWhitelistAPI.getFileWhitelist();
players.forEach(player -> Bukkit.getLogger().info(player));
}####
Comprueba si un jugador está en la whitelist (funciona para modo archivo y MySQL).boolean isPlayerInWhitelist(String playerName)
if (XWhitelistAPI.isPlayerInWhitelist("Steve")) {
Bukkit.getLogger().info("¡Steve está en la whitelist!");
}####
Añade un jugador a la whitelist (archivo o MySQL).void addPlayerToWhitelist(String playerName)
XWhitelistAPI.addPlayerToWhitelist("Alex");####
Elimina un jugador de la whitelist (archivo o MySQL).void removePlayerFromWhitelist(String playerName)
XWhitelistAPI.removePlayerFromWhitelist("Alex");####
Devuelve una lista de todos los jugadores en la whitelist.List<String> listWhitelist()
public void printWhitelist() {
List<String> allPlayers = XWhitelistAPI.listWhitelist();
allPlayers.forEach(player -> Bukkit.getLogger().info(player));
}####
Limpia todos los registros en la whitelist.void clearWhitelist()
XWhitelistAPI.clearWhitelist();###Métodos de Whitelist de Mantenimiento
Haz clic para expandir
####
Devuelve si la whitelist de mantenimiento está activada.boolean isMaintenanceWhitelistActive()
if (XWhitelistAPI.isMaintenanceWhitelistActive()) {
Bukkit.getLogger().info("¡La whitelist de mantenimiento está activa!");
}####
Cambia el estado de la whitelist de mantenimiento.void toggleMaintenanceWhitelist()
XWhitelistAPI.toggleMaintenanceWhitelist();####
Devuelve la lista de jugadores en la whitelist de mantenimiento.List<String> getMaintenanceWhitelist()
public void printMaintenanceWhitelist() {
List<String> staff = XWhitelistAPI.getMaintenanceWhitelist();
staff.forEach(player -> Bukkit.getLogger().info(player));
}####
Comprueba si un jugador está en la whitelist de mantenimiento.boolean isPlayerInMaintenanceWhitelist(String playerName)
if (XWhitelistAPI.isPlayerInMaintenanceWhitelist("Steve")) {
Bukkit.getLogger().info("¡Steve está en la whitelist de mantenimiento!");
}####
Añade un jugador a la whitelist de mantenimiento.void addPlayerToMaintenanceWhitelist(String playerName)
XWhitelistAPI.addPlayerToMaintenanceWhitelist("Alex");####
Elimina un jugador de la whitelist de mantenimiento.void removePlayerFromMaintenanceWhitelist(String playerName)
XWhitelistAPI.removePlayerFromMaintenanceWhitelist("Alex");####
Limpia todos los registros de la whitelist de mantenimiento.void cleanupMaintenanceWhitelist()
XWhitelistAPI.cleanupMaintenanceWhitelist();####
Devuelve una lista de todos los jugadores en la whitelist de mantenimiento.List<String> listMaintenanceWhitelist()
public void printMaintenanceWhitelist() {
List<String> staffList = XWhitelistAPI.listMaintenanceWhitelist();
staffList.forEach(player -> Bukkit.getLogger().info(player));
}##Notas
- Todos los métodos de la API son estáticos, por lo que no necesitas instanciar
XWhitelistAPI. - Los métodos gestionan automáticamente tanto el archivo local como el almacenamiento MySQL.
- Los métodos de whitelist de mantenimiento siempre operan sobre el archivo de whitelist del staff, incluso si MySQL está habilitado.
- Asegúrate de recargar la configuración después de modificar archivos de whitelist si es necesario.