merci de ta réponse JYY. ![]()
c´est justement ce que je fait(constater par sois mème,ou plutot faire plus que se qui est demandé),à chaques exercices , je fais des truc en plus pour que je vois ce que ça fait.
Par exemple j´essaye de créer une espèce discution banale.
pour ce qui pense que ça sert à rien que je parle de ça , c´était pour que certain débutant puissent faire un peu la mème chose que moi, mème si certains ne serron pas dacor
charlostm > n´hésite pas a tester plein de trucs : ce qu´il te passe par la tete ! C´est comme ça qu´on progresse ![]()
Si tu ne sais pas a quoi sert une ligne, enleve la ! ou change les parametres, pour voir ce que ça change ! Faut etre curieux et essayer ![]()
Avec les trucs de base, et meme en mode graphique, tu ne risques rien a essayer !
Si c´est faux, ça ne compilera pas, ou alors en lançant, le programme plantera et donc sera arreté.
Au grand pire, ça plante sec et tu redémarre ta machine ! Donc vraiment pas méchant ![]()
Tu ne risques rien d´autre !
Donc essaye tout ce qu´il te passe par la tete pour voir ce que ça fait, n´hésite pas ![]()
extasy89 > Jette un oeil dans les fonctions de time.h
http://www.opengroup.org/onlinepubs/007908799/xsh/time.h.html
tu y trouveras peut etre des outils qui t´intéresseront pour ce que tu veux faire ![]()
La question m´a l´air bizarre mais je la pose quand même j´ai un pote qui voudrait savoir comment on ferme un gros programme ( ce qui m´a l´air bizarre, c´est qu´il sait fermer des petits programmes, mais bon, c´est peut être parce que ça marche pas pareil) ?
fermer un gros programme ? Ben il existe pas mal de solutions qui se ressemble pas mal, admettons que tu utilises win32 tu peux utiliser [VK_ESCAPE], si un truc ne fonctionne pas tu return E_FAIL; comme ça tu peux localiser avec précision d´un viens une erreur..
Tu peux aussi le faire avec WM_QUIT ( quand PostQuitMessage est a 0 par exemple), faut pas oublier de liberer quelque trucs quand meme sinon ça fait pas propre, notemment si on utilise RegisterClass, ça risquerais de poser des problemes.
Sinon un return fait l´affaire, pour les pas-doué on peut aussi inserer un gros segfault pour que ça crash
Je présume qu´on peut aussi le faire avec la SDL en évenementiel, genre SDL_quit un truc dans le style
faudrait d´abord qu´on sache ce qu´il utilise comme lib
´précise quand meme que VK_ESCAPE attend la pression de la touche echap pour lancer l´evenement, içi on fera
case VK_ESCAPE:
PostQuitMessage(0);
break;
tout ça ayant lieu en plein dans tes callbacks, ta boucle msg ( toujours dans le cas ou tu utilises win32..)
et comment je fais moi pour entrer en mode graphique ?
Faut que tu apprennes une librairie graphique ! Pour ensuite creer tes projets non plus en mode console..
La SDL par exemple est un faux ami parcequ´il faut tout de meme creer un projet en mode console ( tout comme GLUT, pour Graphic Library Utility Toolkit)
Mais toujours est-il qu´avec la maitrise de ces lbrairies ( SDL,OpenGL+GLUT ou +Win32, DirectX...)
Tu peux creer une vraie fenetre comme si il s´agissait d´un jeux commercial, a noter que GLUT est déconseillée si tu n´es pas sous UNIX, car sous Windows elle est en piteuse état.. Préfere Win32 ou l´amorce de la SDL, c´est certes plus compliqué ( voir beaucoup plus pour win32) mais c´est vraiment courrament usité et performant, si tu n´as pas fait de mode console avant, je te suggere vivement d´en faire..
comment faire pour n´afficher que la date et pas l´heure ( et en francais si c´est possible) car j´ai beau chercher je trouve que le moyen d´afficher la date et l´heure
maerci d´avance
Tres bonne question...
Bon , voici le premier screenshot de mon futur jeu de role
titre ( provisoire j´espere , il est a ch*** ) :
The Shattered Kingdom
http://img94.exs.cx/my.phphp?loc=img94&image=tsk7zu.png
Bon , c´est une image in-game , mais j´ai coupe le haut , parceque il y a un bug enorme . .. hum ![]()
Mais bon , la on voit l´interface , qui est situee en bas de l´ecran , la barre de vie a gauche , de mana a droite , le bouton qui ouvre l´inventaire , le texte : tout ca , c´est pas un simple BMP , ce sont des " boutons" rajoutes par le programme , qu´on peut modifier etc . ..
Enfin voila quoi ?
commentaires sur les graphismes ? ( c moi qui ait dessine , et j´avais pas que ca a faire , les graphismes aussi ne sont pas termines , soyez indulgents
, merci
)
extasy89 > tu n´as pas GetDate dans time.h qui te remplit une structure avec la date, l´heure et tout ?
Dans ce cas, tu peux récupérer les champs que tu veux dans ta structure, et n´afficher qu´eux !
jejej > Bien ![]()
ça a l´air de prendre forme ! !
J´ai peur par contre que tu aies des ralentissements :
en effet, calcule le nombre de tiles que tu affiches par frame : ça a l´air d´etre énorme : peut etre parce que les tiles sont tout petits 16*16. Mais bon, en général, le PC gere quand meme ! Pas de ralentissements ?
--> Solution, mettre des tiles plus gros.
slt a tous,
je veux créer un petit pierre/papier/ciseaux mais je sais pas comment faire pour, par exemple, afficher quelque chose quand le résultat de rand() est égal à 1.
merci d´avance
Oui , en fait c´est ce que je comptais faire , mais , j´ai des problemes quand je passe des tiles de 64*64 pixels ( parceque , effectivement , je suis en 1024*768*16 )
Ca provoque des " rayures de tiles " sur l´ecran , c´est assez joli , deconcertant , et completement injouable ![]()
mais , j´etudie un peu ton code pour voir d´où ca vient ( le pire , c´est que j´avais reussi , mais je sais plus trop comment
) .
La , je vais surtout commencer à dessiner un perso , des monstres , des tiles etc : parceque , les charaset de rpgmaker , qui font 20*20 pixels , je sens que ca rendra moyen . ..
extasy89 :
int nombrealeatoire = rand()%8
/ / un chiffre entre 0 et 7
if ( nombrealeatoire == 1 )
{
/ / fait quelque chose
}
sinon , je crois que ca marcherait aussi :
if( rand()%8 == 1 )
{
/ /fait quelque chose
}
jejej > des rayures ? ? Ah ouais, mais attends ! si tu affiches des tiles de 64*64, il ne s´agit pas de les mettre tous les 16, si tu vois ce que je veux dire ! ![]()
Le but, c´est que comme ils sont plus grands, tu en aies bcp moins a afficher, lol ! ![]()
( 16 fois moins ! !)
Voila , je veux faire un jeu ( peut etre un morpion) avec une " vrai" IA ( enfin pas vraiment ^^)
l´ordi memorise les parties et des quil voit que la partie en cour ressemble a une partie ou il a deja perdu , il met la croix a un endroit au hazard a part lendroit ou il a joué a la partie similaire ou il avait perdu , si il a gagné une partie qui ressemble a celle qui a en cours , il saura quoi faire aussi ^^
je pense aussi memorisé les partie sur un fichier texte pour
1 que l´ordi analyse la partie a partir de la
2 que l´on voit les parties deja faites
Voila , je veux faire un jeu ( peut etre un morpion) avec une " vrai" IA ( enfin pas vraiment ^^)
l´ordi memorise les parties et des quil voit que la partie en cour ressemble a une partie ou il a deja perdu , il met la croix a un endroit au hazard a part lendroit ou il a joué a la partie similaire ou il avait perdu , si il a gagné une partie qui ressemble a celle qui a en cours , il saura quoi faire aussi ^^
je pense aussi memorisé les partie sur un fichier texte pour
1 que l´ordi analyse la partie a partir de la
2 que l´on voit les parties deja faites
merci jeje, mais le prob c´est que il n´affiche pas ce qu´il devrait afficher
c´est assez dur à expliquer donc je te passe le code si tu pourrais y jeter un coup d´oeil se serait sympa
using namespace std;
int main()
{
menu:
int nouvelle;
cout<<"nouvelle partie? ( o=1/n=2)"<<endl;
cin>> nouvelle;
if ( nouvelle==1)
{
goto jeu;
}
jeu:
int joueur;
cout<<"choisissez: PIERRE ( 1)/ PAPIER ( 2) / CISEAUX ( 3)"<<endl;
cin>> joueur;
if ( joueur==1)
{
cout<< " vous avez choisi PIERRE"<<endl;
}
if ( joueur==2)
{
cout<< " vous avez choisi PAPIER"<<endl;
}
if ( joueur==3)
{
cout<< " vous avez choisi CISEAUX"<<endl;
}
ordi:
int h;
srand(time(NULL));
cout<<"l´ordinateur va jouer... " <<rand()%3+1<<endl;
if ( rand()%3==1)
{
cout<<"l´ordinateur a joue PIERRE!"<<endl;
}
if ( rand()%3==2)
{
cout<<"l´ordinateur a joue PAPIER!"<<endl;
}
if ( rand()%3==3)
{
cout<<"l´ordinateur a joue CISEAUX!"<<endl;
}
if ( nouvelle==2)
{
goto fin;
}
fin:
int fin;
cout<<"voulez-vous quittez? ( o=1/n=2)"<<endl;
cin>> fin;
if ( fin==1)
{
return 0;
}
else
{
goto menu;
}
system("pause");
return ( 0);
}
dsl jlai mis 2 fois