Aller au contenu principal

API d'Effet d'Utilisation d'Objet

Le script dream_vending utilise un système centralisé (DreamCore.Items) pour définir comment les objets affectent le joueur lorsqu'ils sont utilisés. Cet API vous permet d'assigner facilement des effets aux objets tels que la guérison, les animations, ou des effets visuels comme l'ivresse.

🔧 Utilisation​

Pour rendre un objet utilisable avec des effets, définissez-le dans la table DreamCore.Items avec une fonction use :

DreamCore.Items = {
['mocha'] = { -- Il s'agit du nom de l'objet tel que défini dans votre système d'objets (par exemple, mocha, water, burger)
use = function(playerId)
TriggerClientEvent('dream_vending:client:ApplyItemEffects', playerId, {
-- Les effets sont transmis sous forme de liste (tableaux) de tables.
{ type = 'addArmor', amount = 2 }, -- Le joueur obtiendra d'abord 2 points d'armure
{ type = 'drinkAnim', prop = 'ng_proc_coffee_01a' } -- Après l'armure, il boit
})
end
},

-- Ajoutez plus d'objets ;)
}

💡 Remarque : Si un autre script gère l'objet, ne l'incluez tout simplement pas dans DreamCore.Items.

⚙️ Types d'Effets Supportés​

Ci-dessous se trouve une liste des valeurs de type supportées pour l'événement dream_vending:client:ApplyItemEffects :


🩺 addHeal​

Augmente la santé du joueur.

{ type = 'addHeal', amount = 10 }

💔 removeHeal​

Réduit la santé du joueur.

{ type = 'removeHeal', amount = 10 }

🛡️ addArmor​

Augmente l'armure du joueur.

{ type = 'addArmor', amount = 10 }

💥 removeArmor​

Réduit l'armure du joueur.

{ type = 'removeArmor', amount = 10 }

🍔 eatAnim​

Joue une animation de repas. Définissez éventuellement un accessoire.

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

🥤 drinkAnim​

Joue une animation de boisson. Définissez éventuellement un accessoire.

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

🍻 ivre​

Applique un effet visuel et de mouvement d'ivresse.

Paramètres optionnels :

  • intensité (float): Force de secousse de la caméra
  • trèsIvre (boolean): Change le style de marche
{ type = 'drunk', intensité = 1.0, trèsIvre = true }

⏱️ Effets Différés​

Vous pouvez retarder un effet avec le paramètre timeout (en millisecondes) :

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

💡 Conseils​

  • Vous pouvez empiler plusieurs effets dans un seul objet.
  • Essayez de rester réaliste : un whisky contient plus d'alcool qu'une piña colada.
  • Utilisez des accessoires qui existent dans GTA V (par exemple, prop_ecola_can, ng_proc_coffee_01a, etc.).
  • Vous voulez des effets personnalisés ? Ajoutez une nouvelle gestion de effectType à l'événement ApplyItemEffects (Vous devez acheter la version source).