Ga naar hoofdinhoud

Item Use Effect API

Het dream_vending script maakt gebruik van een gecentraliseerd systeem (DreamCore.Items) om te definiëren hoe items de speler beïnvloeden wanneer ze worden gebruikt. Met deze API kun je eenvoudig effecten toewijzen aan items zoals genezing, animaties, of visuele effecten zoals dronkenschap.

🔧 Gebruik

Om een item bruikbaar te maken met effecten, definieer het in de DreamCore.Items tabel met een use functie:

DreamCore.Items = {
['mocha'] = { -- Dit is de naam van het item zoals gedefinieerd in je itemsysteem (bijv. mocha, water, burger)
use = function(playerId)
TriggerClientEvent('dream_vending:client:ApplyItemEffects', playerId, {
-- Effecten worden doorgegeven als een lijst (array) van tabellen.
{ type = 'addArmor', amount = 2 }, -- Speler krijgt eerst 2 armor
{ type = 'drinkAnim', prop = 'ng_proc_coffee_01a' } -- Na de armor drinkt hij
})
end
},

-- Voeg meer items toe ;)
}

💡 Opmerking: Als een ander script het item beheert, voeg het dan eenvoudigweg niet toe aan DreamCore.Items.

⚙️ Ondersteunde Effect Types

Hieronder staat een lijst van ondersteunde type waarden voor het dream_vending:client:ApplyItemEffects event:


🩺 addHeal

Verhoogt de gezondheid van de speler.

{ type = 'addHeal', amount = 10 }

💔 removeHeal

Verlaagt de gezondheid van de speler.

{ type = 'removeHeal', amount = 10 }

🛡️ addArmor

Verhoogt de armor van de speler.

{ type = 'addArmor', amount = 10 }

💥 removeArmor

Verlaagt de armor van de speler.

{ type = 'removeArmor', amount = 10 }

🍔 eatAnim

Speelt een eetanimatie af. Optioneel een prop instellen.

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

🥤 drinkAnim

Speelt een drinkanimatie af. Optioneel een prop instellen.

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

🍻 dronken

Past een dronken visueel en bewegingseffect toe.

Optionele parameters:

  • intensiteit (float): Sterkte van de camerabeweging
  • zeerDronken (boolean): Verandert de loopstijl
{ type = 'drunk', intensiteit = 1.0, zeerDronken = true }

⏱️ Vertraagde Effecten

Je kunt een effect vertragen met de timeout parameter (in milliseconden):

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

💡 Tips

  • Je kunt meerdere effecten stapelen in een enkel item.
  • Probeer realistisch te blijven: een whiskey bevat meer alcohol dan alleen een piña colada.
  • Gebruik props die bestaan in GTA V (bijv. prop_ecola_can, ng_proc_coffee_01a, enz.).
  • Wil je aangepaste effecten? Voeg nieuwe effectType handling toe aan het ApplyItemEffects event (Je moet de bronversie kopen).