Autorisation : Membre
Nb de messages : 19
Inscrit le : Sam 16 Déc 2017, 16:13
Posté le : Sam 16 Déc 2017, 17:05
Bonjour, j'ai décidé de partager mes programmes, voici donc un flappy bird que j'ai conçu
Code
AxesNaff
FoncNaff
Lbl1
94->Xmax
0->Xmin
0->Ymin
62->Ymax
EffDess
3->H
0->A
31->B
0->G
0->C
nbrAleatoireEnt(10,45->L1(1
nbrAleatoireEnt(10,45->L1(2
nbrAleatoireEnt(10,15)+L1(1->L2(1
nbrAleatoireEnt (10,15)+L1(2->L2(2
Ligne(40,0,40,L1(1
Ligne(40,62,40,L2(1
Ligne(70,0,70,L1(2
Ligne(70,62,70,L2(2
0->S
Texte(-1,10,50,S
While codetouche(!=25
End
While 1
codetouche(->G
If G=25
Then
3->H
Else
H-.5->H
End
B+H->B
If B<=0:Goto 0
A+1->A
If A>94
Then
EffDess
Texte(-1,10,50,S
nbrAleatoireEnt(10,45->L1(1
nbrAleatoireEnt(10,15)+L1(1->L2(1
nbrAleatoireEnt(10,45->L1(2
nbrAleatoireEnt (10,15)+L1(2->L2(2
Ligne(40,0,40,L1(1
Ligne(40,62,40,L2(1
Ligne(70,0,70,L1(2
Ligne(70,62,70,L2(2
0->A
End
If A=70
Then
If B>=L2(2) ou B<=L1(2):Goto 0
S+1->S
Texte(-1,10,50,S
End
If A=40
Then
If B>=L2(1) ou B<=L1(1):Goto 0
S+1->S
Texte(-1,10,50,S
End
Pt-Aff(A,B
End
Lbl 0
If B<0:0->B
Pt-Aff(A,B,2
Pause
Menu("CONTINUER ?","OUI",1,"NON",2
Lbl 2
Voilà, vous n'avez plus qu'à le lancer
Ps: c'est vous qui avancer et pas les barres
Pour sauter c'est flèche du haut[^]
Commencez aussi avec flèche du haut[^]
Pour ceux qui veulent un programme toujours plus optimisé regardez en dessous
---------------------- La meilleure façon de prédire le futur est de l'inventer
Autorisation : Membre
Nb de messages : 31
Inscrit le : Sam 22 Avr 2017, 16:00
Posté le : Mer 20 Déc 2017, 1:16
Bien le bonjour.
Je n'ai actuellement pas ma calculette sur moi, aussi ne pourrais-je pas tester les modifications que je vais donner ici. Pardonnez moi si quelque erreur se fait sentir.
*******************************************
Tout d'abord, les 0->[Variable] peuvent se remplacer par EffVar Variable et on peut ajouter une instruction juste après, donc
Le while 1, j'suis pas très fan, et beaucoup de gens ici le seront aussi. Il faut que tu essayes de mettre tes conditions d'arrêt dans le while, ça évitera cette boucle infini qui va poser problème si tu demandes beaucoup de fois de recommencer le jeu, tu risque d'avoir une erreur mémoire.
Si tu n'arrives pas à trouver un moyen de mettre une condition d'arrêt, utilise simplement une variable initialisée à 0 que tu feras passer à 1 quand tu voudras stopper, et ton while 1 tu le transformes en While non([Variable]
Voilà comme ça j'vois pas quoi dire d'autre, ça aurait été plus simple que je le teste mais bon ^^
Si tu veux des explications sur quoi que ce soit que j'ai mis ici hésite pas
Autorisation : Membre
Nb de messages : 19
Inscrit le : Sam 16 Déc 2017, 16:13
Posté le : Mer 20 Déc 2017, 15:37
Non merci, c'est bon je connais à peu près tout
Je me demandais juste pourquoi effvar était mieux qu'attribuer 0 à la variable. Sinon, L1 correspond à la hauteur du poteau du bas et L2 À L'ECART ENTRE LES DEUX POTEAUX et non à la hauteur du 2 eme.
Dernière chose, ce n'est pas la dernière version de mon programme, j'ai créé une dernière liste enregistrant la distance des poteaux ça donne ça:
Code
{40,70,94->L3
1->N
//Tout ce qui a avant ;) j'ai un peu la flemme x)
If A=L3(N
Then
If N=3
Then
EffDess
Texte(-1,10,50,S
nbrAleatoireEnt(10,45,2->L1
L1+nbrAleatoireEnt(10,15,2->L2
Ligne(40,0,40,L1(1
Ligne(40,62,40,L2(1
Ligne(70,0,70,L1(2
Ligne(70,62,70,L2(2
0->A
1->N
Else
If B>=L2(N) ou B<=L1(N):Goto 0
S+1->S
N+1->N
Texte(-1,10,50,S
End
End
Il se peut que j'ai oublié certains trucs je vais réécrire un message pour ceux qui voudront le code en entier
---------------------- La meilleure façon de prédire le futur est de l'inventer
Hariix Invité
Posté le : Sam 13 Jan 2018, 15:22
Citer : Lee-korn
Bonjour, j'ai décidé de partager mes programmes, voici donc un flappy bird que j'ai conçu
Code
AxesNaff
FoncNaff
Lbl1
94->Xmax
0->Xmin
0->Ymin
62->Ymax
EffDess
3->H
0->A
31->B
0->G
0->C
nbrAleatoireEnt(10,45->L1(1
nbrAleatoireEnt(10,45->L1(2
nbrAleatoireEnt(10,15)+L1(1->L2(1
nbrAleatoireEnt (10,15)+L1(2->L2(2
Ligne(40,0,40,L1(1
Ligne(40,62,40,L2(1
Ligne(70,0,70,L1(2
Ligne(70,62,70,L2(2
0->S
Texte(-1,10,50,S
While codetouche(!=25
End
While 1
codetouche(->G
If G=25
Then
3->H
Else
H-.5->H
End
B+H->B
If B<=0:Goto 0
A+1->A
If A>94
Then
EffDess
Texte(-1,10,50,S
nbrAleatoireEnt(10,45->L1(1
nbrAleatoireEnt(10,15)+L1(1->L2(1
nbrAleatoireEnt(10,45->L1(2
nbrAleatoireEnt (10,15)+L1(2->L2(2
Ligne(40,0,40,L1(1
Ligne(40,62,40,L2(1
Ligne(70,0,70,L1(2
Ligne(70,62,70,L2(2
0->A
End
If A=70
Then
If B>=L2(2) ou B<=L1(2):Goto 0
S+1->S
Texte(-1,10,50,S
End
If A=40
Then
If B>=L2(1) ou B<=L1(1):Goto 0
S+1->S
Texte(-1,10,50,S
End
Pt-Aff(A,B
End
Lbl 0
If B<0:0->B
Pt-Aff(A,B,2
Pause
Menu("CONTINUER ?","OUI",1,"NON",2
Lbl 2
Voilà, vous n'avez plus qu'à le lancer
Ps: c'est vous qui avancer et pas les barres
Pour sauter c'est flèche du haut[^]
Commencez aussi avec flèche du haut[^]
Pour ceux qui veulent un programme toujours plus optimisé regardez en dessous
J'ai une TI 82 Stats.fr et il me dis ERR:Argument sur nbrAleatoireEnt(10,45->L1(1 . AIDER MOI plz
Hariix Invité
Posté le : Sam 13 Jan 2018, 18:46
Je veux bien le code pour la dernière version STP!
Autorisation : Membre
Nb de messages : 19
Inscrit le : Sam 16 Déc 2017, 16:13
Posté le : Sam 20 Jan 2018, 9:56
Bonjour, tu as certainement un problème à L1 car cela ne s'écrit pas "L"+"1" mais c'est la liste L1 que tu trouve à 2nde+1
Sinon je vais peut être réécrire le programme si j'ai le courage mais ce n'est que de l'optimisation, le premier marché très bien
---------------------- La meilleure façon de prédire le futur est de l'inventer