Esencialesai-scoreboard
ai-scoreboard para desarrolladores
ai-scoreboard no tiene exports. Lo que lee de AI Core y los eventos que usa internamente.
ai-scoreboard no tiene exports ni eventos pensados para otros scripts. Todo lo que muestra viene de AI Core, así que cambias el marcador cambiando los datos de AI Core:
- Los jugadores y los nombres vienen de los personajes cargados (
onCharacter,online.namede la lib). - Los recuentos de servicio vienen del estado de servicio de AI Core (
online.onDutyForde la lib, GlobalStateai:duty:<job>). Un jugador cuenta en cuanto AI Core lo pone de servicio (exportSetDuty, o el evento de servicio de un script del puente). Mira los exports de servidor de ai-core.
Si quieres los mismos números en tu propio script, léelos de AI Core, no del marcador:
// Lado cliente: el recuento de policías de servicio, el mismo número que muestra el marcador.
const police = Number(GlobalState["ai:duty:police"] ?? 0);
console.log(`${police} police on duty`);Eventos internos
Estos nombres son del cliente y del servidor propios de ai-scoreboard. Se listan para que los reconozcas en los logs; no los llames desde otros recursos.
| Nombre | Tipo | Qué transporta |
|---|---|---|
ai-scoreboard:board | Callback de cliente a servidor | Responde los recuentos que se muestran ahora mismo (se pide en cada pulsación de tecla, con límite de frecuencia). |
ai-scoreboard:subscribe | Callback de cliente a servidor | Suscribe al jugador a la lista de jugadores. Llega una lista completa una vez, después solo los cambios. |
ai-scoreboard:client:roster | Servidor a cliente (latente) | (seq, rows): la lista de jugadores completa. |
ai-scoreboard:client:changes | Servidor a cliente | (seq, puts, removes): jugadores que entraron o salieron, como mucho una vez por segundo. |