Skip to content

Exports y eventos

API pública de Cuxial Chipeo: exports de servidor para instalar, quitar, freír y leer el equipo de un coche, control de la emergencia, routing buckets y el gancho de creadores.

Instala el equipo desde un script de taller, compruébalo desde un garaje, lee lo que suena en un coche o corta toda la música desde otro recurso. Todos los exports son de servidor. Los vehículos se identifican por matrícula; se recortan los espacios y se pasan a mayúsculas antes de comparar.

Exports de servidor ​

IsRadioInstalled ​

lua
exports.cuxial_chipeo:IsRadioInstalled(plate) --> boolean
lua
if exports.cuxial_chipeo:IsRadioInstalled(plate) then
    print('Este coche tiene equipo de sonido')
end

InstallRadio ​

Instala la radio sin ítem, sin barra de progreso y sin comprobar la distancia.

lua
exports.cuxial_chipeo:InstallRadio(plate, installedBy) --> boolean
ParámetroTipoDescripción
platestringMatrícula del vehículo.
installedBystring?Identificador del personaje que instala. Después puede desinstalarla y montar piezas.

Devuelve false si la matrícula está vacía o ya tiene radio.

UninstallRadio ​

lua
exports.cuxial_chipeo:UninstallRadio(plate) --> boolean ok, string? error

Corta su música y quita la radio. Falla con err_not_installed, o con err_mounts_present mientras el coche tenga piezas montadas.

GetSession ​

lua
exports.cuxial_chipeo:GetSession(plate) --> table?

Copia de lo que suena en el coche, o nil. Campos útiles: playing, title, url, volume, bass, distance, damaged, heat, pressure, queue, group, bucket.

lua
local s = exports.cuxial_chipeo:GetSession(plate)
if s and s.playing then
    print(('%s está sonando %s'):format(plate, s.title or s.url))
end

GetMounts ​

lua
exports.cuxial_chipeo:GetMounts(plate) --> table[]

Copia de las piezas montadas en el coche (vacía si no hay). Cada entrada: uid, c (id de pieza de data/components.lua), b (hueso), o y r (posición y giro), open.

SetDamaged ​

lua
exports.cuxial_chipeo:SetDamaged(plate, damaged) --> boolean

Fríe (true) o repara (false) el equipo. Devuelve false si el coche no tiene radio.

lua
-- Reparar el equipo de sonido junto con el coche
exports.cuxial_chipeo:SetDamaged(plate, false)

SetEmergency / IsEmergency ​

lua
exports.cuxial_chipeo:SetEmergency(on) --> integer stopped
exports.cuxial_chipeo:IsEmergency() --> boolean

Igual que /chipeoemergencia: corta y bloquea toda la música (true) o la levanta (false). Devuelve cuántas sesiones se pararon.

SetPlayerBucket / GetPlayerBucket ​

lua
exports.cuxial_chipeo:SetPlayerBucket(source, bucket) --> boolean
exports.cuxial_chipeo:GetPlayerBucket(source) --> integer

Mueve a un jugador a un routing bucket y actualiza al momento lo que oye. El recurso también detecta solo los cambios de bucket cada buckets.pollMs; llama a este export desde tus scripts de buckets para ahorrarte esa espera.

Gancho de creadores ​

fixed.creators.export deja que otro recurso decida quién puede crear instalaciones fijas:

shared/config.lua
lua
creators = {
    permission = false,
    jobs = {},
    export = { resource = 'my_clubs', name = 'CanBuildSound' },
},
my_clubs/server.lua
lua
exports('CanBuildSound', function(source)
    return IsClubOwner(source) -- tu propia comprobación, devuelve boolean
end)

State bags (solo lectura) ​

BagEnContenido
chipeoVehículoSesión actual (misma forma que GetSession).
chipeoHeatVehículo{ heat, max, pressure }.
chipeoPowerVehículoEstado de batería y tensión del sistema eléctrico.
chipeoEmergencyGlobalStatetrue mientras la emergencia está activa.

Léelos, no los escribas: el servidor manda en esos valores y los sobrescribe.

Exports de ítems ​

Los ítems llaman a exports de cliente con su mismo nombre (cuxial_chipeo.chipeo_radio, cuxial_chipeo.usb_8, cuxial_chipeo.chipeo_medusa_l, cuxial_chipeo.chipeo_sub12…). Cada pieza y parte eléctrica tiene el suyo: pone la pieza en las manos del jugador. Existen para ox_inventory y no están pensados para llamarse desde otros recursos.

© Cuxial