Les objets enregistrés de cette façon seront perdus au redémarrage de la resource. Utilise ceci pour permettre à des scripts externes de définir leurs propres objets sans éditer
_data/items.lua.Paramètres
Valeur de retour
Notes
itemData n’accepte que les champs sûrs suivants ; tout autre champ est supprimé silencieusement :
Champs obligatoires : label (string), weight (number, >= 0), stackable (boolean)
Champs optionnels : description, image, close, maxStack, rarity, type, customSymbol, ammo, durability, degrade, decay, consume, isGrenadeType, separateWeight, universal, oxClientEvent, oxClientExport, oxServerExport
Champs de type table optionnels (validés récursivement, aucune fonction autorisée à l’intérieur) : metadata, status, useOptions, inventoryOptions, throwableOptions, dynamicMetadata
Aussi :
- Les objets enregistrés avec
registerItemn’existent qu’en mémoire. Ils sont perdus au redémarrage de la resource. Si tu as besoin d’objets persistants, utilise le menu d’administration en jeu ou ajoute-les à_data/items.lua - Les objets inconnus de l’inventaire ne sont jamais supprimés : ils sont masqués dans l’inventaire où ils se trouvent et reviennent automatiquement dès que l’objet est de nouveau enregistré ; ton script peut donc appeler
registerItemà tout moment, généralement au démarrage de la resource - Tu peux combiner
registerItemavecregisterUsableItempour définir à la fois l’objet et son comportement d’utilisation depuis un script externe - Si le nom de l’objet existe déjà, l’enregistrement est rejeté afin d’éviter d’écraser des objets définis par fichier
- Les champs de type table (comme
metadata,useOptions, etc.) sont copiés en profondeur, donc les modifications apportées à la table d’origine après l’enregistrement n’ont aucun effet
