Comandos#
Crosshair Creator registra un comando de chat y una tecla, ambos para todos los jugadores. Todo lo demás se hace desde el panel.
Comando / tecla | Dónde | Descripción |
|---|---|---|
| Chat | Abre el panel, o lo cierra si está abierto. Se renombra con |
| Tecla | Igual que el comando. El valor predeterminado viene de |
Dentro del panel:
Tecla | Hace |
|---|---|
| Presets, Build, Draw, Library, Admin. |
| Abre o cierra los ajustes del jugador. |
| Cierra los ajustes, un diálogo o el propio panel. |
Los atajos se ignoran mientras el jugador escribe en un campo de texto.
Exports del cliente#
Para abrir el panel o controlar la retícula desde tus propios scripts — una entrada de menú radial, una app del teléfono, un campo de tiro que entrega una mira de entrenamiento. Todos son del lado del cliente.
Abrir y cerrar el panel
exports['qs-crosshair']:Open() -- respects OnBeforeOpen; does nothing if already open
exports['qs-crosshair']:Close() -- safe to call when it is already closed
if exports['qs-crosshair']:IsOpen() then
-- the panel is on screen and has focus
endOpen espera un momento a la biblioteca del jugador y a los ajustes del servidor, así que llámalo desde un hilo o un manejador de eventos, no desde un bucle cerrado.
Leer la mira activa
local cfg = exports['qs-crosshair']:GetActiveBuild()
-- a copy of the active crosshair, or nil before it has loaded
if cfg then
print(cfg.shape, cfg.primary)
end
local on = exports['qs-crosshair']:IsEnabled()
-- true if the master switch is onLa tabla devuelta es una copia: cambiarla no cambia la retícula. Usa ApplyBuild para eso.
Aplicar una mira
exports['qs-crosshair']:ApplyBuild(cfg, skipPersist)
-- A permanent change: saved as the player's crosshair, kept on reconnect.
exports['qs-crosshair']:ApplyBuild({
shape = 'cross', thickness = 1.5, length = 8, gap = 4,
dot = true, dotSize = 1.5, dotInherit = true,
outline = true, outlineThickness = 1, outlineOpacity = 80, outlineColor = '#050812',
opacity = 100, rotation = 0, primary = '#00ff88',
})
-- A temporary one for an event: shown now, not saved.
-- The player's own crosshair comes back on their next respawn or reconnect.
exports['qs-crosshair']:ApplyBuild(eventCfg, true)Se muestra en pantalla de inmediato y llama a OnApply. No activa la retícula si el jugador la desactivó.
La tabla de la mira#
Lo que GetActiveBuild devuelve y ApplyBuild recibe. Envía una tabla completa — la forma más fácil de conseguir una es diseñar la mira en el panel y leerla con GetActiveBuild.
Campo | Tipo | Significado |
|---|---|---|
| string |
|
| number | Grosor de los brazos, longitud de los brazos y separación desde el centro, en píxeles. |
| string | El color principal, en hexadecimal — |
| bool · number · string · bool | El punto central, su tamaño, su color y si usa el color principal en su lugar. |
| bool · number · number · string | El borde de contraste. La opacidad es 0–100. |
| number | Visibilidad de toda la retícula, 0–100. |
| number | Grados. |
| table | Qué comportamientos están activados: |
Formatos de código para compartir#
Existen dos tipos de código, y no son intercambiables:
Formato | Dónde se usa | Duración |
|---|---|---|
| Un diseño. Se copia desde Share y se pega en Import Code en la Library. Se busca en el servidor, así que solo funciona en el servidor que lo emitió. | 30 días ( |
| Toda una biblioteca, o la mira oficial. Se exporta e importa desde los ajustes del jugador. Lleva todo dentro de la cadena, así que funciona en cualquier servidor que use el script. | Para siempre |
En el lado del servidor, Crosshair Creator no expone exports — expone hooks en su lugar. Para reaccionar a diseños compartidos o cambios de administración desde otro recurso, rellena
OnShareSentoOnAdminSaveenserver/custom/main.lua. Consulta Hooks.



