TESCS : Disable
La fonction Disable fait totalement disparaître un objet : il désactive sa représentation graphique, ses collisions. Tous les scripts qui s'appliquent à l'objet restent actifs et s'exécutent à chaque frame.
Syntaxe
La syntaxe correcte pour cette fonction est :
reference->Disable
Ce qui désactivera la référence sus-précisée.
Exemple d'utilisation
Voici un exemple d'utilisation : si le joueur active un bouton, la maison qui se trouve devant lui est désactivée (ainsi que sa porte, puisqu'il s'agit d'un objet Door).
Begin MaisonQuiDisparait If ( bouton->GetDisabled ) Return Endif If ( bouton->OnActivate ) maison->Disable porte->Disable bouton->Disable Endif End
On notera tout d'abord l'emploi de bouton->Disable qui désactive le bouton, afin qu'on ne puisse plus le presser, et de la condition If ( bouton->GetDisabled == 1 ) pour que le script ne tourne plus si le bouton est désactivé.
Ici, le script désactivera les références "maison", "porte" et "bouton" (Disable) lorsqu'on pressera le bouton (OnActivate).
Notes
- Disable/Enable peuvent être utilisées dans la construction étape-par-étape : si les étapes sont superposées dans le TESCS, appelez des Disable/Enable sur les différentes références en fonction de l'avancement de la quête de construction, d'un Timer global ou de ce que vous voulez.
- Attention : si vous désactivez une source lumineuse, l'éclairage du monde est désactivé, mais les objets non statiques (comme les PNJ) sont toujours illuminés ! Il faut Enabler une lumière produisant un éclairage négatif pour annuler cet éclairage.