Consulta si un jugador está en una tripulación de electricistas, lee su nivel y ejecuta tu propio código cuando se paga un trabajo. Todo lo de esta página corre en el servidor; el script no tiene exports de cliente ni eventos públicos.
Exports de servidor
IsInCrew
Indica si un jugador pertenece a una tripulación de electricistas. El jugador tiene tripulación desde que abre el panel en el NPC, así que true no significa que haya un trabajo en curso.
local inCrew = exports.cuxial_electrician:IsInCrew(source)| Parámetro | Tipo | Descripción |
|---|---|---|
source | number | Id de servidor del jugador. |
Devuelve: boolean.
if exports.cuxial_electrician:IsInCrew(source) then
-- el jugador está en el lobby de electricista o trabajando
endGetProfile
Devuelve el nivel y la XP de electricista de un personaje, conectado o no.
local profile = exports.cuxial_electrician:GetProfile(identifier)| Parámetro | Tipo | Descripción |
|---|---|---|
identifier | string | Identificador de personaje de tu framework (el citizenid en QBox y QBCore, el identificador en ESX). |
Devuelve: { level: number, xp: number }, o nil si el personaje nunca ha abierto el trabajo o la base de datos no está lista.
local profile = exports.cuxial_electrician:GetProfile(citizenid)
if profile and profile.level >= 10 then
-- desbloquea algo para electricistas con experiencia
endxp es el progreso dentro del nivel actual, no el total acumulado.
Gancho: onFinish
server/hooks.lua es un archivo abierto con una función que el script llama una vez por cada miembro que cobra, justo después de dar el dinero y la XP. Escribe dentro tu propio código: recompensas extra, estadísticas, integración con otro recurso.
function CuxialElectrician.hooks.onFinish(src, data)
end| Parámetro | Tipo | Descripción |
|---|---|---|
src | number | Id de servidor del miembro. |
data.runId | number | Número del trabajo en cuxial_jobs_runs. 0 si no se pudo guardar. |
data.region | number | id de la región en data/regions.lua. |
data.score | number | Reparaciones de este miembro que cuentan para el trabajo. |
data.money | number | Dinero que recibió este miembro. |
data.xp | number | XP que recibió este miembro. |
data.owner | string | Identificador de personaje del dueño de la tripulación. |
function CuxialElectrician.hooks.onFinish(src, data)
print(('El jugador %d terminó la región %d: %d reparaciones, $%d, %d XP'):format(
src, data.region, data.score, data.money, data.xp))
endEl gancho no se llama para los miembros desconectados en el momento de entregar los camiones. Un error dentro del gancho se imprime en la consola del servidor y no detiene el pago.
server/hooks.lua se sustituye al actualizar el script. Guarda una copia de tus cambios.
