Comment ralentir un programme? |
Auteur |
Message |
maxlamenace
Invité
|
Posté le : Ven 17 Déc 2010, 14:09
|
|
|
Salut tout le monde, j'ai créer un jeu de tir dans l'espace pour voir et il marche très bien. Mais voila, mon seul problème est que le programme va trop vite et les vaisseau sur lesquels je doit tirer bouge super vite ce qui rend le programme nul.
Merci d'avance. 
|
|
|
|
metallica
Autorisation : Membre
Nb de messages : 108
Inscrit le : Lun 28 Jui 2010, 11:14
|
Posté le : Ven 17 Déc 2010, 14:25
|
|
|
Ecrit:
Autant de fois que tu veux. Plus il y en a plus ça ralentit.
Le "!" se trouve en faisant {math}+{gauche}+{4}
----------------------

Tutoriel sur l'Axe Parser ! |
 |
|
|
Persalteas
Autorisation : Membre
Nb de messages : 2164
Inscrit le : Sam 23 Jan 2010, 20:09
|
Posté le : Ven 17 Déc 2010, 14:50
|
|
|
si tu veux un temps variable (plus ou moins long selon le niveau de jeu), tu utilise un For(
L est la variable de niveau.
écris:
ainsi, si tu est au niveau 1, le programme fait 100 tours de boucle inutiles (ce qui le ralentit), si tu es au niveau 2, il en fait 200...
etc.
mais là, ça te fait un vaisseau qui va de moins en moins vite au fur et à mesure des niveaux.
j'imagine que c'est mieux l'inverse:
dans ce cas:
Code |
:For(X,1,100(11-L)):End
|
ainsi, au niveau 1, il fait 1000 tours inutiles, au niveau 2 il en fait 900, au niveau 3, 800...
enfin voilà.
|
 |
|
|
linkakro
Autorisation : Membre
Nb de messages : 3767
Inscrit le : Lun 19 Oct 2009, 21:25
|
Posté le : Ven 17 Déc 2010, 22:47
|
|
|
Et on peut metre des 69! dans la boucle 
Je pense à cette autre façon pour la même chose.
Code | For(X,1100,100L,-1):End |
---------------------- ti82statfr: 2008, inscrit: 2009, ti84pocketfr: noël2011, ti30xbmultiview: iut 2012-2014
Perfectionniste, manque tact. Pas le temps de tout publier depuis 2011. Répond toujours aux questions. (rédigé juin 2014)
Pour tout le monde et surtout les débutants, quelques-uns des articles courants :
*Traductions Algorithmie/Ti-Basic.
*Caractères spéciaux sur Tout82
Les défauts du TI-Basic : Goto_versus_algo et DelVar/End/Lbl/guillemet/store |
 |
|
|
Persalteas
Autorisation : Membre
Nb de messages : 2164
Inscrit le : Sam 23 Jan 2010, 20:09
|
Posté le : Sam 18 Déc 2010, 14:50
|
|
|
on peut aussi mettre plusieurs boucles les unes dans les autres.
j'ai aussi vu des programmes, ou, selon le niveau, la vitesse n'est pas la même, mais ou on ne peut pas dépasser le niveau 6:
tout simplement comme ça:
L est la variable de niveau:
(69-(10L+L))!
(69-(10L+L))!
(69-(10L+L))!
mais alors, ça pèse lourd....
|
 |
|
|
patate007
Autorisation : Membre
Nb de messages : 117
Inscrit le : Mar 09 Fév 2010, 8:49
|
Posté le : Sam 18 Déc 2010, 18:49
|
|
|
Personellement, j'aime bien faire ça :
Code | :0->[théta] //Au début de ton code.
//Dans ta boucle :
:[théta]+1->[téta]
:if [théta]=3:Then
//Tes instructions à ralentir comme l'incrémentation de tes variables de déplacement.
:0->[théta]
:end |
Comme ça je peus choisir ce que je ralentit et ce que je ne ralentit pas Tu peus remplacer le 3 par le chiffre que tu veus (plus c'est grand, plus c'est ralentit) et aussi par une variable pour faire un système de niveaux 
J'espère que le code est clair, sinon je peus donner un exemple.
---------------------- Joyeuse Pâques  |
 |
|
|
Persalteas
Autorisation : Membre
Nb de messages : 2164
Inscrit le : Sam 23 Jan 2010, 20:09
|
Posté le : Lun 20 Déc 2010, 11:05
|
|
|
moi je veux bien l'exemple stp parce que je vois pas comment tu l'applique à un prog.
|
 |
|
|
lover-lol
Autorisation : Membre
Nb de messages : 74
Inscrit le : Ven 03 Déc 2010, 3:42
|
Posté le : Lun 20 Déc 2010, 12:00
|
|
|
Ben voilà :
@=THETA
Code | 0->@
While A=!=152
Input "",A
If A>100:Then
Lbl Z
If @ =!= 3:Then
For (X,0,100
@+1->@
Goto Z
If @=3:Then
Ton code
|
Voilà, moi c'est ce que j'utilise, après je ne sais pas si tu fais pareil 
---------------------- Derien  |
 |
|
|
patate007
Autorisation : Membre
Nb de messages : 117
Inscrit le : Mar 09 Fév 2010, 8:49
|
Posté le : Lun 20 Déc 2010, 17:42
|
|
|
Mmmh... Non, pas vraiment.
Je prend l'exemple avec un petit programme qui fait avancer un rond de gauche à droite avec une certaine vitesse...
Code | :EffEcr
:1->A
:0->[théta]
:15->X
:Lbl A
:Output(4,A,"O
:[théta]+1->[théta]
:If [théta]=X:Then
:EffEcr //L'effacement de l'écran sera ralentit...
:A+1->A //...ainsi que l'incrémentation ma variable A
:0->[théta] //Je remet le théta à 0 pour le prochain déplacement
:end
:If A=16:Goto 1
:Goto A
:Lbl 1
:1->A
:X-1->X
:Goto A |
Si je met EffEcr après Lbl A, mon rond clignotera. Bon... ce n'est pas très utile mais je suis sûr que tu trouveras une bonne utilité 
---------------------- Joyeuse Pâques  |
 |
|
|
homer__simpsons
Invité
|
Posté le : Mer 22 Déc 2010, 10:22
|
|
|
ou sinon si tu ne veux pas sacrifier de variable tu fait:
Code | :BinAléat(x,0 //plus X est grand plus l'attente
sera longue ((invonvenient: block le clavier)) |
En anglais BinAléat==randBin
[Math]>[<]>[7]
|
|
|
|
linkakro
Autorisation : Membre
Nb de messages : 3767
Inscrit le : Lun 19 Oct 2009, 21:25
|
Posté le : Mer 22 Déc 2010, 17:09
|
|
|
Et si le X est trop grand, c'est comme si tu avais mis un virus. Tu devras enlever les piles pour l'arêter.
---------------------- ti82statfr: 2008, inscrit: 2009, ti84pocketfr: noël2011, ti30xbmultiview: iut 2012-2014
Perfectionniste, manque tact. Pas le temps de tout publier depuis 2011. Répond toujours aux questions. (rédigé juin 2014)
Pour tout le monde et surtout les débutants, quelques-uns des articles courants :
*Traductions Algorithmie/Ti-Basic.
*Caractères spéciaux sur Tout82
Les défauts du TI-Basic : Goto_versus_algo et DelVar/End/Lbl/guillemet/store |
 |
|
|
lover-lol
Autorisation : Membre
Nb de messages : 74
Inscrit le : Ven 03 Déc 2010, 3:42
|
Posté le : Mer 22 Déc 2010, 17:12
|
|
|
Oui et quand tu enlèveras les piles, Mem Cleared !
---------------------- Derien  |
 |
|
|
patate007
Autorisation : Membre
Nb de messages : 117
Inscrit le : Mar 09 Fév 2010, 8:49
|
Posté le : Mer 22 Déc 2010, 17:16
|
|
|
Et ça marche pas si on appuit sur ON ? J'ai pas vraiment envis de tester =°
---------------------- Joyeuse Pâques  |
 |
|
|
Persalteas
Autorisation : Membre
Nb de messages : 2164
Inscrit le : Sam 23 Jan 2010, 20:09
|
Posté le : Mer 22 Déc 2010, 17:55
|
|
|
ça ne marche pas si tu appuies sur On.
c'est un bon virus, Binaléat.
|
 |
|
|
linkakro
Autorisation : Membre
Nb de messages : 3767
Inscrit le : Lun 19 Oct 2009, 21:25
|
Posté le : Mer 22 Déc 2010, 18:12
|
|
|
Cela ne devient un virus que vers 1000 ou plus.
---------------------- ti82statfr: 2008, inscrit: 2009, ti84pocketfr: noël2011, ti30xbmultiview: iut 2012-2014
Perfectionniste, manque tact. Pas le temps de tout publier depuis 2011. Répond toujours aux questions. (rédigé juin 2014)
Pour tout le monde et surtout les débutants, quelques-uns des articles courants :
*Traductions Algorithmie/Ti-Basic.
*Caractères spéciaux sur Tout82
Les défauts du TI-Basic : Goto_versus_algo et DelVar/End/Lbl/guillemet/store |
 |
|
|