This is an old revision of the document!
Morpion - Etape 7
Ce qu'on veut faire
Pour le moment, il est possible de jouer plusieurs fois dans la même case. Ce n'est quelque chose qui est autorisé quand on joue au morpion !
Pour cela, il va falloir :
- identifier le numéro de la case dans laquelle on a cliqué
- vérifier le ce numéro ne correspond pas à une case qui a déjà été jouée
Pour identifier le numéro de la case, on va les numéroter comme ci-dessous :
Ce qu'il faut faire
Nous allons avoir besoin de 3 nouvelles variables :
case: c'est une variable classique qui va nous permettre de savoir le numéro de la case dans laquelle on a cliquécases_joueur_0: c'est une variable un peu particulière. C'est une liste qui va contenir les cases jouées par le joueur 0.cases_joueur_1: c'est une variable un peu particulière. C'est une liste qui va contenir les cases jouées par le joueur 1.
Pour créer une liste, il faut :
- sélectionner la scène
- aller dans la catégorie
Données - cliquer sur le bouton
Créer une liste
Ensuite, dans le fenêtre qui s'ouvre, il faut donner un nom à la liste puis cliquer sur le bouton Ok :
Il faut donc créer la variable et les 2 listes pour obtenir le résultat :
On peut cacher les variables joueur, ligne et colonne en les désélectionnant :
Afficher les variables est utile pour comprendre comment fonctionne une script et surtout comprendre quand il y a des erreurs dans un script.
C'est pour cela que pour l'instant, on affiche la nouvelle variable et les 2 listes.
D'après la numérotation que l'on a choisie, on peut dire :
- si
ligne = 1etcolonne = 1, alorscase = 1 - si
ligne = 1etcolonne = 2, alorscase = 2 - si
ligne = 1etcolonne = 3, alorscase = 3 - si
ligne = 2etcolonne = 1, alorscase = 4 - si
ligne = 2etcolonne = 2, alorscase = 5 - si
ligne = 2etcolonne = 3, alorscase = 6 - si
ligne = 3etcolonne = 1, alorscase = 7 - si
ligne = 3etcolonne = 2, alorscase = 8 - si
ligne = 3etcolonne = 3, alorscase = 9
On peut donc créer 9 éléments comme celui-ci :
On obtient une longue suite d'éléments qu'il faudrait positionner avant l'élément créer un clone de Lutin_morpion :
On obtiendrait alors une suite vraiment très longue d'éléments !
Nous allons donc faire autrement :
- nous allons définir un bloc avec tous les éléments de droite
- nous allons utiliser ce bloc comme un élément juste avant l'élément
créer un clone de Lutin_morpion
Pour cela, il faut :
- aller dans la catégorie
Ajouter blocs - cliquer sur le bouton
Créer un bloc - donne le nom
identifier la case - cliquer sur le bouton
Ok
Il ne reste plus qu'à :
- positionner l'élément
définir identifier la caseen haut des éléments de droite - positionner l'élément
Ajouter blocs → identifier la casejuste avant l'élémentcréer un clone de Lutin_morpion
Ce qu'on pourrait faire de mieux
D'après la numérotation que l'on a choisie, on peut aussi dire :
- si
ligne = 1, alors :- si
colonne = 1, alorscase = 1 - si
colonne = 2, alorscase = 2 - si
colonne = 3, alorscase = 3
- si
ligne = 2, alors :- si
colonne = 1, alorscase = 4 - si
colonne = 2, alorscase = 5 - si
colonne = 3, alorscase = 6
- si
ligne = 3, alors :- si
colonne = 1, alorscase = 7 - si
colonne = 2, alorscase = 8 - si
colonne = 3, alorscase = 9
On peut donc créer 3 éléments comme celui-ci :








