API degli Effetti dell'Uso dell'Oggetto
Lo script dream_vending
utilizza un sistema centralizzato (DreamCore.Items
) per definire come gli oggetti influenzano il giocatore quando vengono utilizzati. Questa API ti consente di assegnare facilmente effetti agli oggetti come cura, animazioni o effetti visivi come l'ebbrezza.
🔧 Utilizzo
Per rendere un oggetto utilizzabile con effetti, definiscilo nella tabella DreamCore.Items
con una funzione use
:
DreamCore.Items = {
['mocha'] = { -- Questo è il nome dell'oggetto come definito nel tuo sistema di oggetti (ad esempio, mocha, water, burger)
use = function(playerId)
TriggerClientEvent('dream_vending:client:ApplyItemEffects', playerId, {
-- Gli effetti vengono passati come un elenco (array) di tabelle.
{ type = 'addArmor', amount = 2 }, -- Il giocatore otterrà prima 2 punti armatura
{ type = 'drinkAnim', prop = 'ng_proc_coffee_01a' } -- Dopo l'armatura, beve
})
end
},
-- Aggiungi più oggetti ;)
}
💡 Nota: Se un altro script gestisce l'oggetto, semplicemente non includerlo in
DreamCore.Items
.
⚙️ Tipi di Effetti Supportati
Di seguito è riportato un elenco dei valori type
supportati per l'evento dream_vending:client:ApplyItemEffects
:
🩺 addHeal
Aumenta la salute del giocatore.
{ type = 'addHeal', amount = 10 }
💔 removeHeal
Riduce la salute del giocatore.
{ type = 'removeHeal', amount = 10 }
🛡️ addArmor
Aumenta l'armatura del giocatore.
{ type = 'addArmor', amount = 10 }
💥 removeArmor
Riduce l'armatura del giocatore.
{ type = 'removeArmor', amount = 10 }
🍔 eatAnim
Esegue un'animazione di mangiare. Opzionalmente imposta un oggetto.
{ type = 'eatAnim', prop = 'prop_cs_burger_01' }
🥤 drinkAnim
Esegue un'animazione di bere. Opzionalmente imposta un oggetto.
{ type = 'drinkAnim', prop = 'prop_ecola_can' }
🍻 drunk
Applica un effetto visivo e di movimento ubriaco.
Parametri opzionali:
intensity
(float): Intensità della vibrazione della telecameraveryDrunk
(boolean): Cambia lo stile di camminata
{ type = 'drunk', intensity = 1.0, veryDrunk = true }
⏱️ Effetti Ritardati
Puoi ritardare un effetto con il parametro timeout
(in millisecondi):
{ type = 'addHeal', amount = 10, timeout = 3000 }
💡 Suggerimenti
- Puoi impilare più effetti in un singolo oggetto.
- Cerca di rimanere realistico: un whiskey contiene più alcol rispetto a una semplice piña colada.
- Utilizza oggetti presenti in GTA V (ad esempio,
prop_ecola_can
,ng_proc_coffee_01a
, ecc.). - Vuoi effetti personalizzati? Aggiungi un nuovo gestore
effectType
all'eventoApplyItemEffects
(È necessario acquistare la versione sorgente).