TESCS : Disable

De Wiwiki
Aller à la navigation Aller à la recherche

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.

Voir également