Poster un nouveau sujet Poster une réponse
[ASTUCE] codetouche(getkey)
Auteur Message
Mégaforce22



Autorisation : Membre
Nb de messages : 11
Inscrit le : Mer 09 Nov 2011, 18:49
Posté le : Mar 22 Nov 2011, 23:08   Citer 

J'écris ici car je n'ai pas vu d'articles semblables.
Comme l'indique le titre, j'ai un moyen de raccourcir(légèrement) les progs avec des codetouche(ou getkey).

Code
codetouche ->K
If K=24


devient

Code
If codetouche=24


Cela libère une variable et accélère légèrement le prog
ATTENTION à ne pas utiliser pour des valeurs continues : si aucune touche n'est pressée, codetouche=0. Si vous voulez que la valeur reste (et que le déplacement continue, comme pour un snake par exemple), il est préférable d'utiliser les variable.
Je me sers aussi de cette technique pour les nombreuses animations et autres fonds d'écrans bouffeurs de batteries:

Code
While non(codetouche
...
End


le prog se termine dès que l'on appuie sur une touche (sauf On, qui fait autre chose)
J'espère en aider quelques-uns. Toute ressemblance avec un article précédemment publié est fortuite et non désirée.

----------------------
"Alors Dieu voulut créer l'homme parfait. Puis il se rappela qu'il m'avait déjà créé." L'Évangile selon Saint-Moi,1,1.
 Adresse email Haut de page Bas de page 
 
tilo1996



Autorisation : Membre
Nb de messages : 129
Inscrit le : Sam 23 Avr 2011, 10:47
Posté le : Mer 23 Nov 2011, 7:24   Citer 

Ah, oui, je suis d'accord mais pas pour le dernier. Au lieu d'ecrire

Code
While non(codetouche


Ecrit

Code
Repeat codetouche

beer.gif

----------------------
http://tchat-tout82.webuda.com/
 Adresse email Haut de page Bas de page 
 
Persalteas



Autorisation : Membre
Nb de messages : 2164
Inscrit le : Sam 23 Jan 2010, 20:09
Posté le : Mer 23 Nov 2011, 8:33   Citer 

exact.

 Adresse email Haut de page Bas de page 
 
Mégaforce22



Autorisation : Membre
Nb de messages : 11
Inscrit le : Mer 09 Nov 2011, 18:49
Posté le : Mer 23 Nov 2011, 18:29   Citer 

J'ai jamais réussi à me servir de Repeat (je crois que c'est pareil que while sauf pour tester la condition) et je vois pas l'interêt de mettre Repeat

----------------------
"Alors Dieu voulut créer l'homme parfait. Puis il se rappela qu'il m'avait déjà créé." L'Évangile selon Saint-Moi,1,1.
 Adresse email Haut de page Bas de page 
 
sandro



Autorisation : Membre
Nb de messages : 1387
Inscrit le : Ven 25 Mar 2011, 22:58
Posté le : Mer 23 Nov 2011, 19:05   Citer 

la différence est que Réapeat est toujours exécuté une ois, puis reexecuté tant que la condition est fausse.

Tu as donc:

Code
Repeat Condition1
Instruction1
End


est équivalent à

Code
Instruction1
While non(Condition1)
Instruction1
End



Dans certains cas, ça permet donc de gagner pas mal de place en mémoire.

Sandro

----------------------
mort à l'inutile, place à la mémoire libre et aux programmes
 Adresse email Haut de page Bas de page 
 
Persalteas



Autorisation : Membre
Nb de messages : 2164
Inscrit le : Sam 23 Jan 2010, 20:09
Posté le : Mer 23 Nov 2011, 20:55   Citer 

Moi j'utilise toujours Repeat et jamais While...

ça change pas grand chose, sauf dans le cas particulier donné par Sandro: si tu as besoin que l'instruction soit exécutée au moins une fois.

Dans un jeu, tu t'en fiches si le prog fait un tour de boucle de plus ou de moins si tu appuies sur "quitter". A la vitesse ou ça va, on le sent pas.
Et la condition est rarement vérifiée du premier coup dans les jeux, donc

Repeat getkey=45

va aussi bien que

While getkey=/=45

 Adresse email Haut de page Bas de page 
 
Mégaforce22
Invité
Posté le : Mer 23 Nov 2011, 23:53   Citer 

mouais...c'est pas bête et ça explique pourquoi j'arrivais pas à m'en servir.Soit.Mais je vois toujours pas le gros interêt(par rapport au codetouche).

  Haut de page Bas de page 
 
sandro



Autorisation : Membre
Nb de messages : 1387
Inscrit le : Ven 25 Mar 2011, 22:58
Posté le : Jeu 24 Nov 2011, 20:44   Citer 

De gagner 1 octé et une pointe de vitesse (le non( prend, comme toute fonction, une certaine durée pour êre executée).

Sandro

----------------------
mort à l'inutile, place à la mémoire libre et aux programmes
 Adresse email Haut de page Bas de page 
 
Poster un nouveau sujet Poster une réponse





  Powered by Fire-Soft-Board v1.0.10 © 2004 - 2024 Groupe FSB
Page générée en 9 requêtes
BlackOne par Grimmlink