J'ai créé un jeu de course mais ....

Signaler
Messages postés
27
Date d'inscription
dimanche 10 février 2002
Statut
Membre
Dernière intervention
16 janvier 2006
-
arconius
Messages postés
27
Date d'inscription
dimanche 10 février 2002
Statut
Membre
Dernière intervention
16 janvier 2006
-
Voila j'ai voulu créé un jeu de course de bonhommes mais étant débutant je suis confronté à un problème, mon bonhomme descend normalement dans le circuit quand on le dirige mais au bout d'un moment il y a un bug pouvez vous m'aidez voici mon code :

#include <stdlib.h>
#include
#include <time.h>
#include <conio.h>
int main ()
{
int circuit1X;
int circuit1Y;
int circuit2X;
int circuit2Y;
int smiley1x;
int smiley1y;
int smileyEx;
int smileyEy;
char touche;
circuit1X=30;
circuit1Y=5;
circuit2Y=5;
smiley1x=36;
smiley1y=6;
do
{
gotoxy (smileyEx,smileyEy);
cout << " ";
gotoxy (smiley1x,smiley1y);
cout << "\x01";
smileyEx=smiley1x;
smileyEy=smiley1y;
while (kbhit())
{
touche=getch();
switch (touche)
{
case 75: smiley1x=smiley1x-1;
break;
case 77: smiley1x=smiley1x+1;
break;
case 80: smiley1y=smiley1y+1;
}
} if ( smiley1x circuit1X || smiley1x circuit2X)
{
cout << "game over !";
getch();
return 0;
}
circuit1Y++;
circuit2Y++;
circuit1X=(rand()%4)+(circuit1X-2);
gotoxy (circuit1X,circuit1Y);
cout << "\x2A";
circuit2X=circuit1X+12;
gotoxy (circuit2X,circuit2Y);
cout << "\x2A";
long i = 60000000L;
clock_t start, finish;
start = clock();
while( i-- );
finish = clock();
circuit1Y++;
circuit2Y++;
circuit1X=(rand()%4)+(circuit1X-1);
gotoxy (circuit1X,circuit1Y);
cout << "\x2A";
circuit2X=circuit1X+12;
gotoxy (circuit2X,circuit2Y);
cout << "\x2A";
circuit2X=circuit1X-12;
if (circuit1Y>24)
{
gotoxy (circuit1X-12,circuit1Y-24);
cout << " ";
gotoxy (circuit1X-12,circuit1Y-23);
cout << " ";
}
long t = 60000000L;
clock_t start1, finish1;
start1 = clock();
while( t-- );
finish1 = clock();

}while (circuit1Y < 2500);

return 0;
}

Excusez pour le peu de clartée mais je débute...
Si vous savez comment faire je vous remercie d'avance .

5 réponses

Messages postés
269
Date d'inscription
mercredi 24 avril 2002
Statut
Membre
Dernière intervention
9 juin 2003

Pour que l'on puisse t'aider :

1/ commente un peu ta source (a quoi servent différentes variables, etc)
2/ dis-nous en quoi consiste ton bug

aussi, tu peux utiliser des structures ca sera plus claire (menfin c pas essentiel pour l'instant)
***raph***
Messages postés
269
Date d'inscription
mercredi 24 avril 2002
Statut
Membre
Dernière intervention
9 juin 2003

le prog bleme une fois qu'on est arrivé en bas de la fenetre dos : c normal..
***raph***
Messages postés
27
Date d'inscription
dimanche 10 février 2002
Statut
Membre
Dernière intervention
16 janvier 2006

J'y ai travailler tout c'est après midi et j'avais compris pour le problème de la fin de la fenêtre dos j'ai essayer d'y remedier en faisant une sorte de boucle qui revenait a chaque fois en haut de la fenêtre dos et qui effaçait le chemin précedent mais dans ce cas là le jeu devient complètement inintérèssant (déjas qu'il l'était pas trop au début!)
Je finalement obter pour dessiner un circuit en rond et faire tourner mes voiture dedans. Le premier qui fait dix tour gagne, je trouve domage d'obter pour cette solution car le circuit n'est plus dynamique. Mais bon quand on est pas très douer on fait comme on peu ! Je te remercie quand même d'avoir essayer d'apporter une solution à mon problème c sympa de ta part. J'essayerais un jour de t'aider à mon tour mais d'ici là j'ai intérêt à progresser ! aller @+.
Messages postés
269
Date d'inscription
mercredi 24 avril 2002
Statut
Membre
Dernière intervention
9 juin 2003

sinon, pour continuer le circuit au dela de l'écran, iltu pouvais juste écrire ligne par ligne sans gotoxy : le reste du circuit serait remonté automatiquement.
Petit conseil pour que cela soit plus fluide : fait déplacer ton caractère juste après que la touche soit pressée. (dans les case : ..)

G fait un jeu un peu similaire en mode texte si tu veux voir la source :
http://www.cppfrance.com/article.aspx?Val=767
***raph***
Messages postés
27
Date d'inscription
dimanche 10 février 2002
Statut
Membre
Dernière intervention
16 janvier 2006

Merci beaucoup pour ton aide kjus je vais de ce pas voir ta source afin de l'étudier.