LogoyStore

API

A API fornece uma interface pública para desenvolvedores integrarem seus plugins ao sistema de proteção contra griefing do yAntiGrief, permitindo consultar dados de staff e informações de proteção.

Obtendo a instância da API

A API é exposta através de um BukkitService assim como feito comumente no Vault.

Exemplo:

AntiGriefAPIHolder antiGriefAPI;

try {
  RegisteredServiceProvider<AntiGriefAPIHolder> rsp = Bukkit.getServer().getServicesManager().getRegistration(AntiGriefAPIHolder.class);
  return rsp == null ? null : (AntiGriefAPIHolder)rsp.getProvider();
} catch (Throwable t) {
  return null;
}

Métodos disponíveis

retrievePlayer(String player)

Recupera os dados de staff de um jogador específico.

StaffHolder staffData = antiGriefAPI.retrievePlayer("Steve");

Parâmetros:

  • player - Nome do jogador

Retorno:

  • StaffHolder contendo os dados de staff do jogador ou null se não encontrado

Observações:

  • Recupera dados diretamente do DAO (Data Access Object)
  • Retorna null se o jogador não for um staff ou não possuir dados registrados
  • Útil para integrar permissões e informações de staff em outros plugins

Estrutura de dados

StaffHolder

Representa os dados de staff de um jogador.

Propriedades principais:

  • Status de staff
  • Nível de permissão
  • Informações de proteção atribuída
  • Dados de atividade
  • Histórico de ações

Boas práticas

  • Sempre verifique null ao recuperar dados de um jogador
  • Use o nome exato do jogador para melhor compatibilidade
  • Evite chamadas excessivas em eventos de alta frequência
  • Verifique o nível de permissão antes de permitir ações sensíveis

Exemplos de uso

Verificando se jogador é staff

StaffHolder staffData = antiGriefAPI.retrievePlayer("Steve");
if (staffData != null) {
    // Jogador é staff
    // Aplicar lógicas específicas para staff
}

Integrando com sistema de permissões

StaffHolder staffData = antiGriefAPI.retrievePlayer(player.getName());
if (staffData != null && staffData.hasPermission("admin")) {
    // Conceder acesso a comando administrativo
}

Obtendo informações de proteção

StaffHolder staffData = antiGriefAPI.retrievePlayer("Steve");
if (staffData != null) {
    // Obter informações de proteção associadas ao staff
    String protectedArea = staffData.getProtectedArea();
}

Nesta página