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 effectTypehandling toe aan hetApplyItemEffectsevent (Je moet de bronversie kopen).