TESCS : AiActivate
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.