API
El Sistema Bouncer proporciona una API pública que te permite interactuar con la verificación de jugadores y el estado de seguridad desde tus propios scripts Udon.
Métodos de API Pública
_VerifyPlayer
Verifica a un jugador, marcándolo como autorizado. Este método es típicamente usado por personal de seguridad a través del scanner de seguridad.
Firma:
public void _VerifyPlayer(VRCPlayerApi p)
Parámetros:
p- El jugador a verificar
Comportamiento:
- Solo el personal de seguridad puede verificar otros jugadores
- El personal de seguridad no puede cambiar el estado de verificación de otros miembros de seguridad.
Ejemplo:
// Obtener el jugador que quieres verificar
VRCPlayerApi targetPlayer = Networking.GetOwner(someObject);
// Verificar el jugador (debe ser llamado por seguridad)
bouncerSystem._VerifyPlayer(targetPlayer);
_IsSecurity
Verifica si un jugador tiene estado de seguridad.
Firma:
public bool _IsSecurity(VRCPlayerApi p)
Parámetros:
p- El jugador a verificar
Retorna:
truesi el jugador es seguridadfalsesi el jugador no es seguridad o no se encuentran datos del jugador
Ejemplo:
VRCPlayerApi player = Networking.LocalPlayer;
if (bouncerSystem._IsSecurity(player))
{
Debug.Log("Player is security!");
// Habilitar características solo para seguridad
}
_IsVerified
Verifica si un jugador está verificado.
Firma:
public bool _IsVerified(VRCPlayerApi p)
Parámetros:
p- El jugador a verificar
Retorna:
truesi el jugador está verificadofalsesi el jugador no está verificado o no se encuentran datos del jugador
Ejemplo:
VRCPlayerApi player = Networking.LocalPlayer;
if (bouncerSystem._IsVerified(player))
{
Debug.Log("Player is verified!");
// Permitir acceso a áreas solo para verificados
}
_ReloadToggleableObjects
Recarga y actualiza todos los objetos activables basándose en el estado actual de seguridad y verificación del jugador local.
Firma:
public void _ReloadToggleableObjects()
Comportamiento:
- Alterna objetos solo para seguridad basándose en el estado de seguridad
- Alterna objetos solo para verificados basándose en el estado de verificación
- Regenera al jugador local si
RespawnOnUnverifyestá habilitado y el jugador no está verificado
_CheckSecurityList
Verifica la lista de seguridad e inicia sesión al jugador local si está autorizado como seguridad.
Firma:
public void _CheckSecurityList()
Comportamiento:
- No restablece el estado verificado
- Verifica múltiples fuentes de seguridad en orden de prioridad:
- Propietario de instancia (si
IOIsSecurityestá habilitado) - Lista de seguridad de texto plano
- Integración con Security Keypad (si está disponible)
- Rol verificado de keypad (si está disponible)
- Lista de seguridad externa desde URL (si está configurada)
- Propietario de instancia (si
- Establece el nivel de seguridad apropiado basándose en el método de inicio de sesión
- Carga listas de seguridad externas de forma asíncrona si se proporciona URL
_UpdateAllUsers
Actualiza toda la GUI obteniendo los valores actualizados del estado de verificación y seguridad de cada jugador.
Firma:
public void _UpdateAllUsers()
Comportamiento:
- Actualiza la visualización de todos los componentes
BouncerUserData. - Útil para asegurarse de que todos los valores estén actualizados, intenta evitar usarlo con frecuencia.
Acceder a Datos de Usuario Directamente
El script BouncerUserData contiene un valor sincronizado byte _securityLevel que representa si el usuario es:
- 0 = no verificado
- 1 = verificado
- 2 = seguridad temporal
- 3 > seguridad permanente
Este valor es privado y solo puede ser accedido por la propiedad SecurityLevel, que puede ser obtenida por cualquiera pero solo editada por el propietario del objeto del jugador.
También puedes acceder a IsVerified, IsSecurity y CanRemove directamente desde el objeto del jugador, aunque se aconseja hacerlo desde el sistema bouncer.
Puedes llamar a UpdateGUI() para refrescar solo los estados de toggle de ese jugador específico.