Vous vous apprêtez à lire un tutoriel rédigé par un membre de ce site. Malgré tout le soin que ce membre a pu apporter au tutoriel, nous ne pouvons pas garantir que les informations contenues sur cette page sont exactes à 100%. Merci de garder cela en tête lorsque vous lirez cette page ;o)
Le Getkey est une fonction très utile mais pas très facile à utiliser car il prend en compte un paramètre difficile à déterminer.
Cette fonction est une sorte de variable : si jamais vous appuyez sur une touche pendant l'exécution du programme, la valeur de la touche sera assignée à la variable Getkey (même si ce n'est pas vraiment une variable). Imaginons que vous vouliez créer un jeu du style Snake II et que vous vouliez faire diriger votre serpent vers la droite, il vous faudra appuyer sur la flèche de droite. Or, s'il n'y a rien pour recevoir cette pression de la touche, votre appui n'aura servi à rien (eh oui, la calculatrice ne peut pas deviner toute seule que le serpent devra aller à droite). C'est pourquoi il faudra se servir de cette fonction.
On va donc apprendre à l'utiliser car ce n'est pas évident. Dans 95% des cas, il se place dans une boucle : ceci car la calculatrice lit les informations très vite et à moins que vous ne soyez très rapide, il me semble difficile que vous ayez le temps d'appuyer sur la touche avant que la calculatrice soit passée à la ligne suivante. Il faut donc le placer dans une boucle pour que la calculatrice le lise plusieurs fois et qu'au moins une fois, lors de la pression d'une touche (qui dure assez longtemps, comparé à la vitesse de la calculatrice), le Getkey prenne une valeur. Mais bon, les explications ne sont pas vraiment importantes : ce qui importe vraiment, c'est la syntaxe :
0->Z
Lbl 0 :
Getkey -> Z
Z=31 => Goto 1
Goto 0
Lbl 1 : "Vous avez appuyé sur [EXE]"
J'ai utilisé la variable Z car c'est elle que j'utilise d'habitude et j'ai mis la valeur 31 car c'est celle qui correspond à la touche EXE. Vous avez compris comment ça fonctionne ?
Je n'étais pas obligé de passer par la variable Z, j'aurais directement pu mettre : Getkey=31 => Goto 1 .
Le problème demeure ici, les touches ont des valeurs assez difficiles à retenir. Voici une image avec le Getkey de chaque touche (c'est celle qui est dans le manuel de votre calculatrice) :
La touche AC/On n'a pas de Getkey, c'est normal car elle sert à stopper les programmes.
Voilà, à vous de l'apprendre. Non, ce n'est pas la peine, il y a une solution : il vous suffit de créer un petit programme qui vous donnera la valeur de la touche pressée.
Code : Autre1
2
3
4
5
6
7
8
9
| Lbl 0 :0->Z
Getkey ->Z
ClrText
Locate 5,5,Z
Goto 0 |
Voilà, maintenant, vous pouvez réaliser des jeux qui ressemblent à quelque chose. Beaucoup de petits jeux sont réalisables du moment qu'ils n'ont pas de graphismes. Le chapitre suivant est d'une importance cruciale : sans lui, vous ne resterez toujours qu'à de petits jeux et ne pourrez jamais créer des jeux de plate-forme (Bomberman, Mario, ...). Ce sont les matrices et les listes mais je ne vous en dis pas plus pour l'instant...