Pular para o conteúdo principal

API de Efeito de Uso de Item

O script dream_vending utiliza um sistema centralizado (DreamCore.Items) para definir como os itens afetam o jogador quando são usados. Esta API permite que você atribua facilmente efeitos aos itens, como cura, animações ou efeitos visuais como embriaguez.

🔧 Uso

Para tornar um item utilizável com efeitos, defina-o na tabela DreamCore.Items com uma função use:

DreamCore.Items = {
['mocha'] = { -- Este é o nome do item conforme definido em seu sistema de itens (por exemplo, mocha, água, hambúrguer)
use = function(playerId)
TriggerClientEvent('dream_vending:client:ApplyItemEffects', playerId, {
-- Os efeitos são passados como uma lista (array) de tabelas.
{ type = 'addArmor', amount = 2 }, -- O jogador receberá primeiro 2 de armadura
{ type = 'drinkAnim', prop = 'ng_proc_coffee_01a' } -- Após a armadura, ele bebe
})
end
},

-- Adicione mais itens ;)
}

💡 Nota: Se outro script gerencia o item, simplesmente não o inclua em DreamCore.Items.

⚙️ Tipos de Efeitos Suportados

Abaixo está uma lista de valores de type suportados para o evento dream_vending:client:ApplyItemEffects:


🩺 addHeal

Aumenta a saúde do jogador.

{ type = 'addHeal', amount = 10 }

💔 removeHeal

Reduz a saúde do jogador.

{ type = 'removeHeal', amount = 10 }

🛡️ addArmor

Aumenta a armadura do jogador.

{ type = 'addArmor', amount = 10 }

💥 removeArmor

Reduz a armadura do jogador.

{ type = 'removeArmor', amount = 10 }

🍔 eatAnim

Executa uma animação de comer. Opcionalmente, defina um acessório.

{ type = 'eatAnim', prop = 'prop_cs_burger_01' }

🥤 drinkAnim

Executa uma animação de beber. Opcionalmente, defina um acessório.

{ type = 'drinkAnim', prop = 'prop_ecola_can' }

🍻 embriagado

Aplica um efeito visual e de movimento de embriaguez.

Parâmetros opcionais:

  • intensidade (float): Força do tremor da câmera
  • muitoEmbriagado (boolean): Altera o estilo de caminhar
{ type = 'embriagado', intensidade = 1.0, muitoEmbriagado = true }

⏱️ Efeitos Adiados

Você pode atrasar um efeito com o parâmetro timeout (em milissegundos):

{ type = 'addHeal', amount = 10, timeout = 3000 }

💡 Dicas

  • Você pode empilhar vários efeitos em um único item.
  • Tente ser realista: um uísque contém mais álcool do que apenas uma piña colada.
  • Use acessórios que existam no GTA V (por exemplo, prop_ecola_can, ng_proc_coffee_01a, etc.).
  • Quer efeitos personalizados? Adicione um novo tratamento de effectType ao evento ApplyItemEffects (Você precisa comprar a versão de origem).