Skip to content

Exports y eventos

API pública de Cuxial Electrician: exports de servidor y el gancho que se ejecuta al pagar un trabajo.

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.

lua
local inCrew = exports.cuxial_electrician:IsInCrew(source)
ParámetroTipoDescripción
sourcenumberId de servidor del jugador.

Devuelve: boolean.

lua
if exports.cuxial_electrician:IsInCrew(source) then
    -- el jugador está en el lobby de electricista o trabajando
end

GetProfile ​

Devuelve el nivel y la XP de electricista de un personaje, conectado o no.

lua
local profile = exports.cuxial_electrician:GetProfile(identifier)
ParámetroTipoDescripción
identifierstringIdentificador 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.

lua
local profile = exports.cuxial_electrician:GetProfile(citizenid)
if profile and profile.level >= 10 then
    -- desbloquea algo para electricistas con experiencia
end

xp 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.

lua
function CuxialElectrician.hooks.onFinish(src, data)
end
ParámetroTipoDescripción
srcnumberId de servidor del miembro.
data.runIdnumberNúmero del trabajo en cuxial_jobs_runs. 0 si no se pudo guardar.
data.regionnumberid de la región en data/regions.lua.
data.scorenumberReparaciones de este miembro que cuentan para el trabajo.
data.moneynumberDinero que recibió este miembro.
data.xpnumberXP que recibió este miembro.
data.ownerstringIdentificador de personaje del dueño de la tripulación.
server/hooks.lua
lua
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))
end

El 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.

© Cuxial