Trabajos, bandas e items · Lección 2/3 · 6 min

Bandas (gangs)

QBCore separa el trabajo legal del trabajo criminal: las gangs. Funcionan casi igual que los jobs.

Además del trabajo (job), QBCore tiene un segundo sistema paralelo: las bandas (gangs), pensado para el rol criminal. Un jugador puede tener a la vez un job ('unemployed') y una gang ('ballas').

lua
local Player = QBCore.Functions.GetPlayer(source)
local gang = Player.PlayerData.gang

local nombre = gang.name        -- 'ballas'
local etiqueta = gang.label     -- 'Ballas'
local rango = gang.grade.level  -- 0, 1, 2…

-- Asignar una gang
Player.Functions.SetGang('ballas', 1)

Bandas con QBCore

Las gangs se definen en qb-core/shared/gangs.lua. Úsalas para zonas de territorio, ventas de droga entre bandas, etc. La validación va siempre en el servidor, igual que con los jobs.

Practica lo aprendido

0/3
Test

En QBCore, ¿qué relación hay entre el trabajo (job) y la banda (gang) de un jugador?

Rellena los huecos

Completa para asignar al jugador la banda 'ballas' con rango 1.

1local Player = QBCore.Functions.GetPlayer(source)
2Player.Functions.('ballas', 1)
Pista

Es el gemelo de SetJob, pero para bandas.

Ordena el código

Ordena un callback de servidor que devuelve el nombre de la gang del jugador, o 'none' si no tiene.

Coloca las líneas en el orden correcto con las flechas.

end)
QBCore.Functions.CreateCallback('gang:miBanda', function(source, cb)
cb(Player.PlayerData.gang.name or 'none')
if not Player then return cb('none') end
local Player = QBCore.Functions.GetPlayer(source)
Pista

Registra el callback → obtén el jugador → valida que existe → responde con cb() leyendo la gang.

Reto: prográmalo tú

Haz un callback que devuelva el nombre de la gang del jugador, o 'none' si no tiene.

Escríbelo tú en tu editor (VS Code) y pruébalo en tu servidor. Aquí se aprende haciéndolo, no copiando.

Ver pista

cb(Player.PlayerData.gang.name or 'none').

Escribe aquí tu solución:

¿Qué tal esta lección?