Ce sujet date depuis quelque temps.
Cependant, pour les prochains visiteur je vais répondre cocoggu.
C'est faux, il n'y a pas besoin d'être expert pour faire afficher un trucen continue.
Cependant pour programmer, la il ne faut plus être débutant :D.
C'est pourquoi je me contenterai de répondre à sa question: un mouvement continu .
Nous commençons par initialiser les variables: A et B que nous allons utiliser pour indiquer les coordonnées du point:
1>A
1>B Le point initial s'affichera en haut à Gauche de l'écrant.
Lbl 0
ClsText
0>I
A+1>A
If A=21:Then Goto 1
Else If B=7:Then Goto 2
Ifend:ifend
Do
I+1>I
Locate A,B,"."
Lpwhile I ><40 >< = Différent Histoire que l'affichage ne soit pas trop rapide
Goto 0
Lbl 1
A-1>A
Goto 0
Lbl 2
B-1>B
Goto 0
Avec ce morceau de code, vous verrez défiler un point sur la première ligne de l'écrant à une vitesse assez lente. C'était pour répondre à la question de cocognu.
Maintenant nous pouvons améliorer ce programme afin que quand on appuie sur une des flèche, la direction de défilment change (nous dirigeons le points). La deuxième étape dans la programmation d'un Snake.
1>A
1>B Le point initial s'affichera en haut à Gauche de l'écrant.
Lbl 0
ClsText
0>I
A+1>A
If A=21:Then A-1>A
Else If B=7:B-1>B
Else If B=0:B+1>B
Else If A=0:A+1>B
Ifend:ifend:Ifend:Ifend
If Getkey=37:Then Goto 1
Ifend
Do
I+1>I
Locate A,B,"."
Lpwhile I ><4 >< = Différent Histoire que l'affichage ne soit pas trop rapide
Goto 0
Lbl 1
ClsText
0>I
B+1>B
If A=21:Then A-1>A
Else If B=7:B-1>B
Else If B=0:B+1>B
Else If A=0:A+1>B
Ifend:ifend:Ifend:Ifend
If Getkey=27:Then Goto 0
Ifend
Do
I+1>I
Locate A,B,"."
Lpwhile I ><4 >< = Différent Histoire que l'affichage ne soit pas trop rapide
Goto 4
Avec ce code, vous pourez dirriger le "curseur" soit vers le bas, soit vers la droite. Pour les autres direction ajoutez des "getrkey" avec la touche correspondante à la direction etc... A vous d'amélioré.
Le code a été testé et il fonctionne cependant, il se peut quand recopiant j'ai laissé quelques erreurs.
Enfin vous verrez bien, ce n'est qu'à titre d'exemple, à ceux qui veulent progresser d'améliorer ce code pour en faire un snake à la fin.
Dans ce code a été employé les fonctions:
Getkey: Elle attribue une variable à la dernière touche appuyé sur le clavier (chaque touche correspond à une varialbe (elles sont indiquées dans votre manuel).
Exemple: Si j'appuie sur la touche flêche bas lors de l'exécution du programme, getkey sera égale à 37.
Do & Lpwhile: Fonction d'une boucle. Do est le début de la boucle, Lpwhile <Conditoon> va renvoyer à Do tant que la condition est appliquée.
Ici je m'en sert pour limiter la vitesse de défilement, essayé ce code en supprimant les lignes qui partent de DO jusqu'à Lpwhile, vous constaterez que la vitesse est très rapide. Si vous changez la valeur de I dans la condition (augmenter la) vous changerez ainsi la vitesse, plus I est grand, plus la vitesse est lente.
If & Else If & Then & Ifend: Fonction de base pour les conditions. Attention ces commandes ne sont pas forcément dans les graph 25.
Lbl & Goto: Fonction de base de la boucle. Lbl définie une ligne, Goto renvoie à la ligne définie précedement ou après par lbl.
Attention Lbl ne peut prendre comme valeur que des chiffres (0-9).