TESCS2 : AddItem

De Wiwiki
Aller à la navigation Aller à la recherche


Syntaxe :

[ActorID|ContainerID.]AddItem ObjectID, Nombre 

Ajoute le "Nombre" d'objets ObjectID à l'inventaire du container appelant.

Exemples :

AddItem MyObject, 1
Ref MyItem
Short count
set MyItem to ArenaAkaviriLongSword
set count to 1
player.additem MyItem Count

Notes:

  • ObjectID est l'Editor ID d'un objet de base, pas d'une référence.
  • Vous pouvez utiliser
    • une variable de type référence comme ObjectID mais en la "remplisant" avec un identifiant d'objet de base
    • une variable de type short pour Nombre.
  • Cela ne marche pas dans un bloc OnAdd, car l'objet est directement créé dans l'inventaire plutôt que de lui être vraiment ajouté.
  • En test, il est possible que vous ayez besoin d'ajouter des objets au PC à partir de la console pour tester leurs blocs OnAdd. On peut dans ce cas utiliser PlaceAtMe et prendre directement l'objet placé sur le sol.

Console et identifiant de l'objet

Utilisation de la console : Pour utiliser AddItem (de même pour PlaceAtMe) avec la console, vous devez utiliser le FormID, pas le EditorID. Dans le TESCS2, FormID est dans la petite colonne de l'éditeur d'objets, juste à coté de EditorID. Elargissez cette colonne pour voir l'indentifiant qu'elle contient.

Ainsi, à la console :

player.additem LowerPants02, 1     ;  donne une erreur à la console , mais correct dans un script
player.additem 000229AB, 1         ;  correct à la console

FormId est de la forme : yyxxxxxxx.

Le préfixe "yy" est la référence du plugin, xxxxxxx la référence de l'objet dans ce plugin (non modifiable). Le préfixe 00 désigne Oblivion.esm, 01 le premier plugin chargé, 02 le deuxième… Le préfixe yy dépend donc de l'ordre et du rang de chargement de votre plugin. Si vous modifiez la liste des plugins dans le jeu, la valeur yy peut donc changer, mais pas xxxxxxx. Vérifiez le rang de votre plugin pour utiliser sans risque d'erreur les commandes console.



Voir également

RemoveItem

GetItemCount