Comandos#
Hunter Job no registra ningún comando de chat ni de consola. Todo lo que hace un jugador empieza en el empleador, y todo lo que cambia un propietario está en la configuración. Los comandos que usarás a su alrededor pertenecen a tu framework:
Comando | Dónde | Descripción |
|---|---|---|
| En el juego (ESX, QBCore, Qbox) | Da a un jugador el trabajo de cazador. Quitarle el trabajo termina cualquier misión en la que esté. |
| Consola | Aplica los cambios de configuración. Los grupos y las misiones en curso se descartan; los niveles, la experiencia y la clasificación se conservan. |
Para diagnosticar, activa Config.Debug: el script registra entonces lo que hace en la consola del servidor y en F8, lo que muestra hasta dónde llegó algo antes de detenerse.
Exports del cliente#
Para abrir el panel del trabajo desde tus propios scripts — un menú radial, un gestor de NPC, una app del teléfono.
openHunterMenu
Abre el panel completo del trabajo — misiones, grupo, tienda, estadísticas y guía — exactamente como al hablar con el empleador.
exports['qs-hunter']:openHunterMenu()La cámara solo pasa al empleador cuando el jugador está a menos de 6 m de él; desde cualquier otro lugar, el panel simplemente se abre sobre el juego. El trabajo se sigue comprobando al iniciar una misión.
Abrirlo desde el servidor
El mismo panel, abierto para un jugador desde un script del servidor:
TriggerClientEvent('qs-hunter:openHunterMenu', source)Mostrar una notificación de cazador
Envía un mensaje mediante las notificaciones propias del trabajo — o mediante tu SendTextMessage cuando Config.DefaultNotifications está desactivado:
-- server side; type is 'info', 'success', 'error' or 'warning'
TriggerClientEvent('qs-hunter:sendNotification', source, 'notify', 'success', 'The ranger signed off your licence.')A propósito, no hay ningún export que abra las estadísticas por sí solas. Son una vista dentro del panel, y abrir una sin el otro capturaría el cursor sin dibujar nada. Abre el panel en su lugar.
Exports del servidor#
Cómo otro recurso consulta sobre los cazadores — un script de guardabosques o de caza furtiva, un panel de despacho, una oficina de empleo que cuenta quién está trabajando.
IsPlayerOnMission
Si un jugador está en una misión de caza en este momento, según el propio registro del servidor de quién está en qué — escrito cuando empieza una misión y borrado cuando se termina, se abandona o el jugador se desconecta.
if exports['qs-hunter']:IsPlayerOnMission(source) then
-- carrying a rifle in the woods is part of the job
endDevuelve un booleano. Es el que debes usar cuando la respuesta importa.
getOnDutyCount
Cuántos jugadores están cazando ahora mismo, según informan sus clientes cuando una misión empieza y termina.
local hunters = exports['qs-hunter']:getOnDutyCount()isPlayerOnDuty
Si el cliente de un jugador dice que está cazando. Se mantiene para los scripts que ya lo llaman; aquí un cliente modificado decide su propia respuesta, así que usa IsPlayerOnMission para cualquier cosa que conceda o deniegue algo.
local onDuty = exports['qs-hunter']:isPlayerOnDuty(source)Callback checkItem
Un callback de ox_lib que responde cuántas unidades de un ítem lleva un jugador, o false cuando no tiene ninguna. Se llama desde el cliente:
local hides = lib.callback.await('qs-hunter:checkItem', false, 'deer_hide')
if hides then
print(('carrying %d deer hides'):format(hides))
endSobre los eventos#
Los eventos de red del trabajo — qs-hunter:startGroupQuest, qs-hunter:buyItems, qs-hunter:invitePlayerToParty y los demás — existen para su propia interfaz. Reciben nombres y cantidades, nunca precios ni recompensas, y cada uno se comprueba contra la configuración y los registros del servidor, así que activarlos desde otro sitio no aporta nada y no está soportado. Usa los exports de arriba.
Los rechazos llegan al jugador como claves de traducción convertidas en texto en su idioma — NOTIFY_NOT_HUNTER, NOT_ENOUGH_LEVEL_MEMBERS, NOTIFY_ANIMAL_LIMIT_REACHED. Lo que significa cada una está en Errores comunes.



