OpenSim Tutorial : Cours de LSL - Module 3
Dans ce module, nous allons nous intresser aux instructions conditionnelles et aux structures de contrle en gnral. Elles sont au nombre de 4 : le IF, le WHILE, le DO_WHILE et le FOR.
Le IF
L'instruction if est la plus simple des instructions conditionnelles dans LSL. Si l'expression entre parenthses vaut TRUE, le code entre les accolades est excut. L'instruction if est le seul type d'instruction dans LSL destine au contrle de flux. Ceci permet de prendre des dcisions sur les lments de code excuter.
Le WHILE
L'instruction while nous permet d'excuter une suite d'instructions tant que expression est vrai (TRUE).
Le DO_WHILE
L'instruction do while permet d'excuter une srie d'instructions jusqu' ce que expression vale FALSE. La condition tant cette fois place en fin de boucle.
Le FOR
L'instruction for est particulirement utile lorsque vous connaissez l'avance le nombre d'itrations que vous voulez faire faire au bloc d'instruction.
Il existe deux autres mcanismes de contrle de flux. Le premier est la transition state, que nous avons dj vue. Le second est la commande return; que nous verrons dans les fonctions avances du langage.
Dans tous les exemples de contrle de flux, la dcision concernant le chemin prendre est dtermine par la valeur d'une expression. Dans LSL, une expression est une combinaison d'oprateurs et de fonctions. Les fonctions seront expliques plus en dtail dans les fonctions avances du langage. Les oprateurs sont rpartis en plusieurs grandes catgories que nous verrons dans le module suivant.
Exercice
Mais pour terminer ce module et faire une petite rvision nous allons crire un script qui calcule les 10 premiers nombres de Fibonacci et qui les affiches dans le chat lorsque l'on clique sur un objet.
En mathmatique, les nombres de Fibonacci sont ceux de la suite :
0 ,1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144,
Ils sont dfinis par la formule de rcurrence suivante :
Fn = Fn-1 + Fn-2
Avec les conditions initiales suivantes :
F0 = 0 et F1 = 1
touch_start est un vnement qui se dclenche lorsque l'on clique sur l'objet.
llSay comme nous l'avons dj vu est une instruction du LSL qui permet d'crire quelque chose sur un canal. En l'occurrence ici, il s'agit du canal 0 et donc celui du Chat.
|