Herramienta gratis

Creador de ítems de FiveM

Configura tu ítem (comida, bebida, droga, dinero o arma) y te damos el código listo para ESX, QBCore y ox_inventory, con dónde pegarlo paso a paso.

Configura tu ítem

Qué hace al usarlo

Pon 0 para desactivar cada efecto. Puedes combinar varios.

Función Pro
Función Pro

Ficha técnica (lo que va al código)

Animación: mp_player_inteat@burger · clip mp_player_int_eat_burger

Prop (modelo): prop_cs_burger_01

Efectos → hambre/sed/estrés = metadata (QB) / esx_status / ox status · vida = SetEntityHealth · armadura = SetPedArmour · droga = timecycle+postfx · dinero = AddMoney.

1) Definición del ítem

Pégalo en: qb-core/shared/items.lua

['burger'] = { name = 'burger', label = 'Hamburguesa', weight = 220, type = 'item', image = 'burger.png', unique = false, useable = true, shouldClose = true, combinable = nil, description = 'Una hamburguesa que quita el hambre.' },

2) Uso del ítem (servidor)

Pégalo en: tu_recurso/server/main.lua

local QBCore = exports['qb-core']:GetCoreObject()

QBCore.Functions.CreateUseableItem('burger', function(source)
    local src = source
    local Player = QBCore.Functions.GetPlayer(src)
    if not Player then return end
    if not Player.Functions.RemoveItem('burger', 1) then return end
    TriggerClientEvent('inventory:client:ItemBox', src, QBCore.Shared.Items['burger'], 'remove')
    Player.Functions.SetMetaData('hunger', math.min(100, (Player.PlayerData.metadata.hunger or 0) + 40))
    TriggerClientEvent('hud:client:UpdateNeeds', src, Player.PlayerData.metadata.hunger, Player.PlayerData.metadata.thirst)
    TriggerClientEvent('burger:client:use', src)
    QBCore.Functions.Notify(src, 'Has usado Hamburguesa', 'success')
end)

3) Efectos en el jugador (cliente)

Pégalo en: tu_recurso/client/main.lua (+ client_script en fxmanifest)

RegisterNetEvent('burger:client:use', function()
    local ped = PlayerPedId()
    RequestAnimDict('mp_player_inteat@burger')
    while not HasAnimDictLoaded('mp_player_inteat@burger') do Wait(0) end
    TaskPlayAnim(ped, 'mp_player_inteat@burger', 'mp_player_int_eat_burger', 8.0, -8.0, -1, 49, 0, false, false, false)
    local model = `prop_cs_burger_01`
    RequestModel(model)
    while not HasModelLoaded(model) do Wait(0) end
    local obj = CreateObject(model, GetEntityCoords(ped), true, true, false)
    AttachEntityToEntity(obj, ped, GetPedBoneIndex(ped, 18905), 0.13, 0.05, 0.02, -50.0, 16.0, 60.0, true, true, false, true, 1, true)
    Wait(3000)
    ClearPedTasks(ped)
    DeleteEntity(obj)
end)

El icono del inventario (la imagen PNG)

Pon el PNG con el nombre del id (burger.png) en la carpeta de imágenes de tu inventario: qb-inventory/html/images/ (QBCore) o ox_inventory/web/images/ (ox/Qbox). ¿No tienes icono? Pídeselo a la IA en el chat o genera uno y guárdalo ahí.

El prop (objeto 3D en la mano)

El prop es un modelo 3D de GTA que el personaje sostiene durante la animación (lo metemos en el código por ti). Usa uno de los sugeridos o pega cualquier modelo válido. ¿Quieres un objeto que no existe en GTA? Eso requiere un modelo custom (.ydr) como stream asset; cuando lo tengas, pon aquí su nombre y funciona igual.

Creador de ítems FiveM (ESX/QBCore/ox) | Crxative-M