TESCS : AiActivate

De Wiwiki
Aller à la navigation Aller à la recherche

La fonction AiActivate force un PNJ à activer un objet (voir la fonction Activate)

Syntaxe

La syntaxe correcte pour cette fonction est :

id_appelant -> AiActivate, id_objet

Avec id_appelant l'ID de l'acteur (PNJ) appelant la fonction, et id_objet l'objet à faire activer par le PNJ.

Utilisation

Les différents objets avec lesquels la fonction utilisable, ainsi que l'action réalisée à l'activation, sont listées dans ce tableau :

Type d'objet Action lors de l'activation
Portes intérieures Ouvrir la porte
Portes extérieures Cas très spécial : voir dans les Notes
Containers Ouvrir l'inventaire
Livres/Parchemins Lire le texte*
PNJ Commencer le dialogue
Arme/Armure/Vêtement Ajouter à l'inventaire
Crochet, sonde Ajouter à l'inventaire
Lumières ramassables Ajouter à l'inventaire
Activateurs Activer le script lié**

Notes

  • Dans le cas des portes extérieures et, en général, des portes de téléportation, les règles suivantes s'appliquent :
    - Si la porte téléporte dans la même cellule, l'acteur active normalement la porte.
    - Si la porte téléporte dans une autre cellule, le jeu crashe. Faites très attention à ce détail ;)
  • Lire le texte : Lorsqu'un AiActivate agit sur un livre/parchemin, l'acteur ne fait que le lire... ce qui ne signifie pas grand chose pour un PNJ. Préférez utiliser un couple SetDelete/AddItem pour ajouter un livre ou parchemin à l'inventaire d'un PNJ.
  • Activer le script lié : Attention aux scripts où plusieurs fonctions s'appliquent au joueur (exemple : pièges). En effet, même si c'est un PNJ qui active le script, ce sera le joueur qui se mangera le piège, ce qui est à éviter.
  • Dans le Morrowind de base (sans Tribunal ni Bloodmoon), cette fonction bugge presque tout le temps, sauf pour ce qui est de boire des potions. La plupart de ses usages sont corrigés dans Tribunal.

Voir également